RemoteFolder.cpp

Go to the documentation of this file.
00001 ÿþ/ /   R e m o t e F o l d e r . c p p   :   I m p l e m e n t a t i o n   o f   C R e m o t e F o l d e r 
00002  
00003  
00004  
00005  # i n c l u d e   " s t d a f x . h " 
00006  
00007  # i n c l u d e   " r e m o t e l i m i t s . h " 
00008  
00009  # i n c l u d e   " R e m o t e F o l d e r . h " 
00010  
00011  # i n c l u d e   " R e m o t e E n u m I D L i s t . h " 
00012  
00013  
00014  
00015  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00016  
00017    *   C R e m o t e F o l d e r : : G e t C l a s s I D ( )   :   I P e r s i s t 
00018  
00019    *   R e t r i e v e s   t h e   c l a s s   i d e n t i f i e r   ( C L S I D )   o f   t h e   o b j e c t 
00020  
00021    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00022  
00023  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t C l a s s I D (   C L S I D *   p C l s i d   ) 
00024  
00025  { 
00026  
00027          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t C l a s s I D   c a l l e d \ n " ) ; 
00028  
00029  
00030  
00031          A T L A S S E R T (   p C l s i d   ) ; 
00032  
00033          i f   ( p C l s i d   = =   N U L L ) 
00034  
00035                  r e t u r n   E _ P O I N T E R ; 
00036  
00037  
00038  
00039          * p C l s i d   =   _ _ u u i d o f ( C R e m o t e F o l d e r ) ; 
00040  
00041          r e t u r n   S _ O K ; 
00042  
00043  } 
00044  
00045  
00046  
00047  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00048  
00049    *   C R e m o t e F o l d e r : : I n i t i a l i z e ( )   :   I P e r s i s t F o l d e r 
00050  
00051    *   A s s i g n s   a   f u l l y   q u a l i f i e d   P I D L   t o   t h e   n e w   o b j e c t   w h i c h   w e   s t o r e   f o r   l a t e r 
00052  
00053    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00054  
00055  S T D M E T H O D I M P   C R e m o t e F o l d e r : : I n i t i a l i z e (   P C I D L I S T _ A B S O L U T E   p i d l   ) 
00056  
00057  { 
00058  
00059          A T L T R A C E ( " C R e m o t e F o l d e r : : I n i t i a l i z e   c a l l e d \ n " ) ; 
00060  
00061  
00062  
00063          A T L A S S E R T (   p i d l   ! =   N U L L   ) ; 
00064  
00065          m _ p i d l   =   m _ P i d l M a n a g e r . C o p y (   p i d l   ) ; 
00066  
00067          A T L A S S E R T (   m _ p i d l   ) ; 
00068  
00069          r e t u r n   S _ O K ; 
00070  
00071  } 
00072  
00073  
00074  
00075  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00076  
00077    *   C R e m o t e F o l d e r : : G e t C u r F o l d e r ( )   :   I P e r s i s t F o l d e r 2 
00078  
00079    *   R e t r i e v e s   t h e   f u l l y   q u a l i f i e d   P I D L   o f   t h e   f o l d e r . 
00080  
00081    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00082  
00083  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t C u r F o l d e r (   _ _ d e r e f _ o u t   P I D L I S T _ A B S O L U T E   * p p i d l   ) 
00084  
00085  { 
00086  
00087          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t C u r F o l d e r   c a l l e d \ n " ) ; 
00088  
00089  
00090  
00091          A T L A S S E R T (   m _ p i d l   ) ; 
00092  
00093          i f   ( m _ p i d l   = =   N U L L ) 
00094  
00095                  r e t u r n   S _ F A L S E ; 
00096  
00097                  / /   T O D O :   S h o u l d   p p i d l   b e   s e t   t o   N U L L ? 
00098  
00099  
00100  
00101          / /   M a k e   a   c o p y   o f   t h e   P I D L   t h a t   w a s   p a s s e d   t o   S w i s h   i n   I n i t i a l i z e ( p i d l ) 
00102  
00103          * p p i d l   =   m _ P i d l M a n a g e r . C o p y (   m _ p i d l   ) ; 
00104  
00105          A T L A S S E R T (   * p p i d l   ) ; 
00106  
00107          i f ( ! * p p i d l ) 
00108  
00109                  r e t u r n   E _ O U T O F M E M O R Y ; 
00110  
00111          
00112  
00113          r e t u r n   S _ O K ; 
00114  
00115  } 
00116  
00117  
00118  
00119  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00120  
00121    *   C R e m o t e F o l d e r : : B i n d T o O b j e c t   :   I S h e l l F o l d e r 
00122  
00123    *   S u b f o l d e r   o f   r o o t   f o l d e r   o p e n e d :   C r e a t e   a n d   i n i t i a l i z e   n e w   C R e m o t e F o l d e r   
00124  
00125    *   C O M   o b j e c t   t o   r e p r e s e n t   s u b f o l d e r   a n d   r e t u r n   i t s   I S h e l l F o l d e r   i n t e r f a c e . 
00126  
00127    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00128  
00129  S T D M E T H O D I M P   C R e m o t e F o l d e r : : B i n d T o O b j e c t (   _ _ i n   P C U I D L I S T _ R E L A T I V E   p i d l , 
00130  
00131                                                                                      _ _ i n _ o p t   I B i n d C t x   * p b c , 
00132  
00133                                                                                      _ _ i n   R E F I I D   r i i d , 
00134  
00135                                                                                      _ _ o u t   v o i d * *   p p v O u t   ) 
00136  
00137  { 
00138  
00139          A T L T R A C E ( " C R e m o t e F o l d e r : : B i n d T o O b j e c t   c a l l e d \ n " ) ; 
00140  
00141          ( v o i d ) p b c ; 
00142  
00143          * p p v O u t   =   N U L L ; 
00144  
00145          H R E S U L T   h r ; 
00146  
00147  
00148  
00149          / /   W e   c a n   a s s u m e   a l l   c h i l d r e n   o f   p i d l   a r e   f o r   R e m o t e F o l d e r   
00150  
00151          / /   o b j e c t s   ( R E M O T E P I D L s )   a s   w e   h a v e   n o   j u n c t i o n   p o i n t s   e t c .   
00152  
00153          / /   C h e c k   t h a t   t h e   f i r s t   i t e m   i n   t h e   p i d l   a l s o   a   R E M O T E P I D L   a s   
00154  
00155          / /   t h i s   i s   t h e   r e m o t e   s u b f o l d e r / f i l e   t h a t   w e   a r e   b i n d i n g   t o . 
00156  
00157          h r   =   m _ P i d l M a n a g e r . I s V a l i d (   p i d l   ) ; 
00158  
00159          i f   ( F A I L E D ( h r ) ) 
00160  
00161                  r e t u r n   h r ; 
00162  
00163  
00164  
00165          / /   C r e a t e   C O M   o b j e c t   t o   b i n d   t o   P I D L 
00166  
00167          C C o m O b j e c t < C R e m o t e F o l d e r >   * p R e m o t e F o l d e r ; 
00168  
00169          h r   =   C C o m O b j e c t < C R e m o t e F o l d e r > : : C r e a t e I n s t a n c e (   & p R e m o t e F o l d e r   ) ; 
00170  
00171          i f   ( F A I L E D ( h r ) ) 
00172  
00173                  r e t u r n   h r ; 
00174  
00175  
00176  
00177          p R e m o t e F o l d e r - > A d d R e f ( ) ; 
00178  
00179  
00180  
00181          / /   I n i t i a l i z e   C O M   o b j e c t   f r o m   P I D L 
00182  
00183          P I D L I S T _ A B S O L U T E   p i d l B i n d   =   I L C o m b i n e (   m _ p i d l ,   p i d l   ) ;     
00184  
00185          h r   =   p i d l B i n d   ?   S _ O K   :   E _ O U T O F M E M O R Y ; 
00186  
00187          i f   ( S U C C E E D E D ( h r ) ) 
00188  
00189          { 
00190  
00191                  / /   I n i t i a l i s e   a n d   r e t r i e v e   r e q u e s t e d   i n t e r f a c e 
00192  
00193                  h r   =   p R e m o t e F o l d e r - > I n i t i a l i z e (   p i d l B i n d   ) ; 
00194  
00195                  i f   ( S U C C E E D E D ( h r ) ) 
00196  
00197                          h r   =   p R e m o t e F o l d e r - > Q u e r y I n t e r f a c e (   r i i d ,   p p v O u t   ) ; 
00198  
00199                  
00200  
00201                  m _ P i d l M a n a g e r . D e l e t e (   p i d l B i n d   ) ; 
00202  
00203          } 
00204  
00205  
00206  
00207          p R e m o t e F o l d e r - > R e l e a s e ( ) ; 
00208  
00209  
00210  
00211          / *   T O D O :   N o t   s u r e   i f   I   h a v e   d o n e   t h i s   p r o p e r l y   w i t h   Q u e r y I n t e r f a c e 
00212  
00213            *   F r o m   M S :   I m p l e m e n t a t i o n s   o f   B i n d T o O b j e c t   c a n   o p t i m i z e   a n y   c a l l   t o   
00214  
00215            *   i t   b y     q u i c k l y   f a i l i n g   f o r   I I D   v a l u e s   t h a t   i t   d o e s   n o t   s u p p o r t .   F o r   
00216  
00217            *   e x a m p l e ,   i f   t h e   S h e l l   f o l d e r   o b j e c t   o f   t h e   s u b i t e m   d o e s   n o t   s u p p o r t   
00218  
00219            *   I R e m o t e C o m p u t e r ,   t h e   i m p l e m e n t a t i o n   s h o u l d   r e t u r n   E _ N O I N T E R F A C E   
00220  
00221            *   i m m e d i a t e l y   i n s t e a d   o f   n e e d l e s s l y   c r e a t i n g   t h e   S h e l l   f o l d e r   o b j e c t   
00222  
00223            *   f o r   t h e   s u b i t e m   a n d   t h e n   f i n d i n g   t h a t   I R e m o t e C o m p u t e r   w a s   n o t   
00224  
00225            *   s u p p o r t e d   a f t e r   a l l .   
00226  
00227            *   h t t p : / / m s d n 2 . m i c r o s o f t . c o m / e n - u s / l i b r a r y / m s 6 3 2 9 5 4 . a s p x 
00228  
00229            * / 
00230  
00231  
00232  
00233          r e t u r n   h r ; 
00234  
00235  } 
00236  
00237  
00238  
00239  / /   E n u m O b j e c t s ( )   c r e a t e s   a   C O M   o b j e c t   t h a t   i m p l e m e n t s   I E n u m I D L i s t . 
00240  
00241  S T D M E T H O D I M P   C R e m o t e F o l d e r : : E n u m O b j e c t s ( 
00242  
00243          _ _ i n _ o p t   H W N D   h w n d O w n e r ,   
00244  
00245          _ _ i n   S H C O N T F   d w F l a g s , 
00246  
00247          _ _ d e r e f _ o u t _ o p t   L P E N U M I D L I S T *   p p E n u m I D L i s t   ) 
00248  
00249  { 
00250  
00251          A T L T R A C E ( " C R e m o t e F o l d e r : : E n u m O b j e c t s   c a l l e d \ n " ) ; 
00252  
00253          A T L A S S E R T ( m _ p i d l ) ; 
00254  
00255          ( v o i d ) h w n d O w n e r ;   / /   N o   u s e r   i n p u t   r e q u i r e d 
00256  
00257  
00258  
00259          H R E S U L T   h r ; 
00260  
00261  
00262  
00263          i f   ( p p E n u m I D L i s t   = =   N U L L ) 
00264  
00265                  r e t u r n   E _ P O I N T E R ; 
00266  
00267  
00268  
00269          * p p E n u m I D L i s t   =   N U L L ; 
00270  
00271  
00272  
00273          / /   C r e a t e   i n s t a n c e   o f   o u r   f o l d e r   e n u m e r a t o r   c l a s s 
00274  
00275          C C o m O b j e c t < C R e m o t e E n u m I D L i s t > *   p E n u m ; 
00276  
00277          h r   =   C C o m O b j e c t < C R e m o t e E n u m I D L i s t > : : C r e a t e I n s t a n c e (   & p E n u m   ) ; 
00278  
00279          i f   ( F A I L E D ( h r ) ) 
00280  
00281                  r e t u r n   h r ; 
00282  
00283  
00284  
00285          / /   A d d R e f ( )   t h e   R e m o t e E n u m I D L i s t   w h i l e   w e   u s e   i t 
00286  
00287          p E n u m - > A d d R e f ( ) ; 
00288  
00289  
00290  
00291          / /   B i n d   t h i s   f o l d e r   t o   t h e   e n u m e r a t o r .     T h i s   w i l l   A d d R e f ( )   t h e   f o l d e r 
00292  
00293          / /   t o   e n s u r e   i t   r e m a i n s   a l i v e   a s   l o n g   a s   t h e   e n u m e r a t o r   n e e d s   i t 
00294  
00295          h r   =   p E n u m - > B i n d T o F o l d e r (   t h i s   ) ; 
00296  
00297  
00298  
00299          / /   C o n n e c t   e n u m e r a t o r   t o   f o l d e r   a n d   u s e   c o n n e c t i o n   t o   p o p u l a t e   l i s t i n g 
00300  
00301          i f   ( S U C C E E D E D ( h r ) ) 
00302  
00303                  h r   =   p E n u m - > C o n n e c t (   _ T ( " b o b U s e r " ) ,   _ T ( " b o b H o s t " ) ,   _ T ( " b o b P a t h " ) ,   4 2   ) ; 
00304  
00305  
00306  
00307          / /   R e t u r n   a n   I E n u m I D L i s t   i n t e r f a c e   t o   t h e   c a l l e r . 
00308  
00309          i f   ( S U C C E E D E D ( h r ) ) 
00310  
00311                  h r   =   p E n u m - > Q u e r y I n t e r f a c e (   I I D _ I E n u m I D L i s t ,   ( v o i d * * ) p p E n u m I D L i s t   ) ; 
00312  
00313  
00314  
00315          p E n u m - > R e l e a s e ( ) ; 
00316  
00317  
00318  
00319          r e t u r n   h r ; 
00320  
00321  } 
00322  
00323  
00324  
00325  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00326  
00327    *   C R e m o t e F o l d e r : : C r e a t e V i e w O b j e c t   :   I S h e l l F o l d e r 
00328  
00329    *   R e t u r n s   t h e   r e q u e s t e d   C O M   i n t e r f a c e   f o r   a s p e c t s   o f   t h e   f o l d e r ' s   
00330  
00331    *   f u n c t i o n a l i t y ,   p r i m a r i l y   t h e   S h e l l V i e w   o b j e c t   b u t   a l s o   c o n t e x t   m e n u s   e t c . 
00332  
00333    *   C o n t r a s t e d   w i t h   G e t U I O b j e c t O f   w h i c h   p e r f o r m s   a   s i m i l a r   f u n c t i o n   b u t 
00334  
00335    *   f o r   t h e   o b j e c t s   c o n t a i n t e d   * w i t h i n *   t h e   f o l d e r . 
00336  
00337    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / S T D M E T H O D I M P   C R e m o t e F o l d e r : : C r e a t e V i e w O b j e c t (   _ _ i n _ o p t   H W N D   h w n d O w n e r ,   
00338  
00339                                                                                            _ _ i n   R E F I I D   r i i d ,   
00340  
00341                                                                                            _ _ d e r e f _ o u t   v o i d   * * p p v O u t   ) 
00342  
00343  { 
00344  
00345          A T L T R A C E ( " C R e m o t e F o l d e r : : C r e a t e V i e w O b j e c t   c a l l e d \ n " ) ; 
00346  
00347          A T L A S S E R T ( m _ p i d l ) ;   / /   C h e c k   t h i s   o b j e c t   h a s   b e e n   i n i t i a l i s e d 
00348  
00349          ( v o i d ) h w n d O w n e r ;   / /   N o t   a   c u s t o m   f o l d e r   v i e w .     N o   p a r e n t   w i n d o w   n e e d e d 
00350  
00351          
00352  
00353          * p p v O u t   =   N U L L ; 
00354  
00355  
00356  
00357          H R E S U L T   h r   =   E _ N O I N T E R F A C E ; 
00358  
00359  
00360  
00361          i f   ( r i i d   = =   I I D _ I S h e l l V i e w ) 
00362  
00363          { 
00364  
00365                  A T L T R A C E ( " \ t \ t R e q u e s t :   I I D _ I S h e l l V i e w \ n " ) ; 
00366  
00367                  S F V _ C R E A T E   s f v D a t a   =   {   s i z e o f ( s f v D a t a ) ,   0   } ; 
00368  
00369  
00370  
00371                  h r   =   Q u e r y I n t e r f a c e (   I I D _ P P V _ A R G S ( & s f v D a t a . p s h f )   ) ; 
00372  
00373                  i f   ( S U C C E E D E D ( h r ) ) 
00374  
00375                  { 
00376  
00377                          s f v D a t a . p s v O u t e r   =   N U L L ; 
00378  
00379                          s f v D a t a . p s f v c b   =   N U L L ;   
00380  
00381                          h r   =   S H C r e a t e S h e l l F o l d e r V i e w (   & s f v D a t a ,   ( I S h e l l V i e w * * ) p p v O u t   ) ; 
00382  
00383                          s f v D a t a . p s h f - > R e l e a s e ( ) ; 
00384  
00385                  } 
00386  
00387          } 
00388  
00389          e l s e   i f   ( r i i d   = =   I I D _ I S h e l l D e t a i l s ) 
00390  
00391          { 
00392  
00393                  A T L T R A C E ( " \ t \ t R e q u e s t :   I I D _ I S h e l l D e t a i l s \ n " ) ; 
00394  
00395                  r e t u r n   Q u e r y I n t e r f a c e ( r i i d ,   p p v O u t ) ; 
00396  
00397          } 
00398  
00399          
00400  
00401          A T L T R A C E ( " \ t \ t R e q u e s t :   < u n k n o w n > \ n " ) ; 
00402  
00403  
00404  
00405          r e t u r n   h r ; 
00406  
00407  } 
00408  
00409  
00410  
00411  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00412  
00413    *   C R e m o t e F o l d e r : : G e t U I O b j e c t O f   :   I S h e l l F o l d e r 
00414  
00415    *   R e t r i e v e   a n   o p t i o n a l   i n t e r f a c e   s u p p o r t e d   b y   o b j e c t s   i n   t h e   f o l d e r . 
00416  
00417    *   T h i s   m e t h o d   i s   c a l l e d   w h e n   t h e   s h e l l   i s   r e q u e s t i n g   e x t r a   i n f o r m a t i o n 
00418  
00419    *   a b o u t   a n   o b j e c t   s u c h   a s   i t s   i c o n ,   c o n t e x t   m e n u ,   t h u m b n a i l   i m a g e   e t c . 
00420  
00421    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00422  
00423  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t U I O b j e c t O f (   H W N D   h w n d O w n e r ,   U I N T   c P i d l , 
00424  
00425          _ _ i n _ e c o u n t _ o p t ( c P i d l )   P C U I T E M I D _ C H I L D _ A R R A Y   a P i d l ,   R E F I I D   r i i d , 
00426  
00427          _ _ r e s e r v e d   L P U I N T   p u R e s e r v e d ,   _ _ o u t   v o i d * *   p p v R e t u r n   ) 
00428  
00429  { 
00430  
00431          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t U I O b j e c t O f   c a l l e d \ n " ) ; 
00432  
00433          ( v o i d ) h w n d O w n e r ;   / /   N o   u s e r   i n p u t   r e q u i r e d 
00434  
00435          ( v o i d ) p u R e s e r v e d ; 
00436  
00437  
00438  
00439          * p p v R e t u r n   =   N U L L ; 
00440  
00441          
00442  
00443          / * 
00444  
00445          I C o n t e x t M e n u         T h e   c i d l   p a r a m e t e r   c a n   b e   g r e a t e r   t h a n   o r   e q u a l   t o   o n e . 
00446  
00447          I C o n t e x t M e n u 2       T h e   c i d l   p a r a m e t e r   c a n   b e   g r e a t e r   t h a n   o r   e q u a l   t o   o n e . 
00448  
00449          I D a t a O b j e c t           T h e   c i d l   p a r a m e t e r   c a n   b e   g r e a t e r   t h a n   o r   e q u a l   t o   o n e . 
00450  
00451          I D r o p T a r g e t           T h e   c i d l   p a r a m e t e r   c a n   o n l y   b e   o n e . 
00452  
00453          I E x t r a c t I c o n         T h e   c i d l   p a r a m e t e r   c a n   o n l y   b e   o n e . 
00454  
00455          I Q u e r y I n f o             T h e   c i d l   p a r a m e t e r   c a n   o n l y   b e   o n e . 
00456  
00457          * / 
00458  
00459  
00460  
00461          i f   ( r i i d   = =   I I D _ I E x t r a c t I c o n W ) 
00462  
00463          { 
00464  
00465                  A T L T R A C E ( " \ t \ t R e q u e s t :   I I D _ I E x t r a c t I c o n W \ n " ) ; 
00466  
00467                  A T L A S S E R T (   c P i d l   = =   1   ) ;   / /   O n l y   o n e   f i l e   ' s e l e c t e d ' 
00468  
00469  
00470  
00471                  r e t u r n   Q u e r y I n t e r f a c e ( r i i d ,   p p v R e t u r n ) ; 
00472  
00473          } 
00474  
00475          e l s e   i f   ( r i i d   = =   I I D _ I Q u e r y A s s o c i a t i o n s ) 
00476  
00477          { 
00478  
00479                  A T L T R A C E ( " \ t \ t R e q u e s t :   I I D _ I Q u e r y A s s o c i a t i o n s \ n " ) ; 
00480  
00481                  A T L A S S E R T (   c P i d l   = =   1   ) ;   / /   O n l y   o n e   f i l e   ' s e l e c t e d ' 
00482  
00483  
00484  
00485                  H R E S U L T   h r   =   A s s o c C r e a t e (   C L S I D _ Q u e r y A s s o c i a t i o n s ,   
00486  
00487                                                                      I I D _ I Q u e r y A s s o c i a t i o n s , 
00488  
00489                                                                      p p v R e t u r n ) ; 
00490  
00491                  i f   ( S U C C E E D E D ( h r ) )   
00492  
00493                  { 
00494  
00495                          / /   G e t   C L S I D   i n   { D W O R D - W O R D - W O R D - W O R D - W O R D . D W O R D }   f o r m 
00496  
00497                          L P O L E S T R   p s z ; 
00498  
00499                          S t r i n g F r o m C L S I D ( _ _ u u i d o f ( C R e m o t e F o l d e r ) ,   & p s z ) ; 
00500  
00501  
00502  
00503                          / /   I n i t i a l i s e   d e f a u l t   a s s o c   p r o v i d e r   t o   u s e   S w i s h   C L S I D   k e y   f o r   d a t a 
00504  
00505                          r e i n t e r p r e t _ c a s t < I Q u e r y A s s o c i a t i o n s * > ( * p p v R e t u r n ) - > I n i t ( 
00506  
00507                                  A S S O C F _ I N I T _ D E F A U L T T O S T A R ,   p s z ,   N U L L ,   N U L L ) ; 
00508  
00509  
00510  
00511                          C o T a s k M e m F r e e (   p s z   ) ; 
00512  
00513                  } 
00514  
00515                  r e t u r n   h r ; 
00516  
00517          } 
00518  
00519          
00520  
00521          A T L T R A C E ( " \ t \ t R e q u e s t :   < u n k n o w n > \ n " ) ; 
00522  
00523  
00524  
00525          r e t u r n   E _ N O I N T E R F A C E ; 
00526  
00527  } 
00528  
00529  
00530  
00531  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00532  
00533    *   C R e m o t e F o l d e r : : G e t D i s p l a y N a m e O f   :   I S h e l l F o l d e r 
00534  
00535    *   R e t r i e v e s   t h e   d i s p l a y   n a m e   f o r   t h e   s p e c i f i e d   f i l e   o b j e c t   o r   s u b f o l d e r . 
00536  
00537    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00538  
00539  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t D i s p l a y N a m e O f (   _ _ i n   P C U I T E M I D _ C H I L D   p i d l ,   
00540  
00541                                                                                            _ _ i n   S H G D N F   u F l a g s ,   
00542  
00543                                                                                            _ _ o u t   S T R R E T   * p N a m e   ) 
00544  
00545  { 
00546  
00547          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t D i s p l a y N a m e O f   c a l l e d \ n " ) ; 
00548  
00549  
00550  
00551          C S t r i n g   s t r N a m e ; 
00552  
00553  
00554  
00555          i f   ( u F l a g s   &   S H G D N _ F O R P A R S I N G ) 
00556  
00557          { 
00558  
00559                  / /   W e   d o   n o t   c a r e   i f   t h e   n a m e   i s   r e l a t i v e   t o   t h e   f o l d e r   o r   t h e 
00560  
00561                  / /   d e s k t o p   f o r   t h e   p a r s i n g   n a m e   -   a l w a y s   r e t u r n   c a n o n i c a l   s t r i n g : 
00562  
00563                  / /           s f t p : / / u s e r n a m e @ h o s t n a m e : p o r t / p a t h 
00564  
00565  
00566  
00567                  / /   T O D O :     i f   ! S H G D N _ I N F O L D E R   t h e   p i d l   m a y   n o t   b e   s i n g l e - l e v e l 
00568  
00569                  / /   s o   w e   s h o u l d   a l w a y s   s e e k   t o   t h e   l a s t   p i d l   b e f o r e   e x t r a c t i n g   i n f o 
00570  
00571  
00572  
00573                  s t r N a m e   =   _ G e t L o n g N a m e F r o m P I D L ( p i d l ,   t r u e ) ; 
00574  
00575          } 
00576  
00577          e l s e   i f ( u F l a g s   &   S H G D N _ F O R A D D R E S S B A R ) 
00578  
00579          { 
00580  
00581                  / /   W e   d o   n o t   c a r e   i f   t h e   n a m e   i s   r e l a t i v e   t o   t h e   f o l d e r   o r   t h e 
00582  
00583                  / /   d e s k t o p   f o r   t h e   p a r s i n g   n a m e   -   a l w a y s   r e t u r n   c a n o n i c a l   s t r i n g : 
00584  
00585                  / /           s f t p : / / u s e r n a m e @ h o s t n a m e : p o r t / p a t h 
00586  
00587                  / /   u n l e s s   t h e   p o r t   i s   t h e   d e f a u l t   p o r t   i n   w h i c h   c a s e   i t   i s   o m m i t t e d : 
00588  
00589                  / /           s f t p : / / u s e r n a m e @ h o s t n a m e / p a t h 
00590  
00591  
00592  
00593                  s t r N a m e   =   _ G e t L o n g N a m e F r o m P I D L ( p i d l ,   f a l s e ) ; 
00594  
00595          } 
00596  
00597          e l s e 
00598  
00599          { 
00600  
00601                  / /   W e   d o   n o t   c a r e   i f   t h e   n a m e   i s   r e l a t i v e   t o   t h e   f o l d e r   o r   t h e 
00602  
00603                  / /   d e s k t o p   f o r   t h e   p a r s i n g   n a m e   -   a l w a y s   r e t u r n   t h e   l a b e l : 
00604  
00605                  A T L A S S E R T ( u F l a g s   = =   S H G D N _ N O R M A L   | |   u F l a g s   = =   S H G D N _ I N F O L D E R   | | 
00606  
00607                          ( u F l a g s   &   S H G D N _ F O R E D I T I N G ) ) ; 
00608  
00609  
00610  
00611                  s t r N a m e   =   _ G e t L a b e l F r o m P I D L ( p i d l ) ; 
00612  
00613          } 
00614  
00615  
00616  
00617          / /   S t o r e   i n   a   S T R R E T   a n d   r e t u r n 
00618  
00619          p N a m e - > u T y p e   =   S T R R E T _ W S T R ; 
00620  
00621  
00622  
00623          r e t u r n   S H S t r D u p W (   s t r N a m e ,   & p N a m e - > p O l e S t r   ) ; 
00624  
00625  } 
00626  
00627  
00628  
00629  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00630  
00631    *   C R e m o t e F o l d e r : : G e t A t t r i b u t e s O f   :   I S h e l l F o l d e r 
00632  
00633    *   R e t u r n s   t h e   a t t r i b u t e s   f o r   t h e   i t e m s   w h o s e   P I D L s   a r e   p a s s e d   i n . 
00634  
00635    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00636  
00637  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t A t t r i b u t e s O f ( 
00638  
00639          U I N T   c I d l , 
00640  
00641          _ _ i n _ e c o u n t _ o p t (   c I d l   )   P C U I T E M I D _ C H I L D _ A R R A Y   a P i d l , 
00642  
00643          _ _ i n o u t   S F G A O F   * p d w A t t r i b s   ) 
00644  
00645  { 
00646  
00647          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t A t t r i b u t e s O f   c a l l e d \ n " ) ; 
00648  
00649          ( v o i d ) a P i d l ;   / /   A l l   i t e m s   a r e   f o l d e r s .   N o   n e e d   t o   c h e c k   P I D L . 
00650  
00651          ( v o i d ) c I d l ; 
00652  
00653  
00654  
00655          D W O R D   d w A t t r i b s   =   0 ; 
00656  
00657          d w A t t r i b s   | =   S F G A O _ F O L D E R ; 
00658  
00659          d w A t t r i b s   | =   S F G A O _ H A S S U B F O L D E R ; 
00660  
00661          * p d w A t t r i b s   & =   d w A t t r i b s ; 
00662  
00663  
00664  
00665          r e t u r n   S _ O K ; 
00666  
00667  } 
00668  
00669  
00670  
00671  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00672  
00673    *   C R e m o t e F o l d e r : : C o m p a r e I D s   :   I S h e l l F o l d e r 
00674  
00675    *   D e t e r m i n e s   t h e   r e l a t i v e   o r d e r   o f   t w o   f i l e   o b j e c t s   o r   f o l d e r s . 
00676  
00677    *   G i v e n   t h e i r   i t e m   i d e n t i f i e r   l i s t s ,   t h e   t w o   o b j e c t s   a r e   c o m p a r e d   a n d   a 
00678  
00679    *   r e s u l t   c o d e   i s   r e t u r n e d . 
00680  
00681    *       N e g a t i v e :   p i d l 1   <   p i d l 2 
00682  
00683    *       P o s i t i v e :   p i d l 1   >   p i d l 2 
00684  
00685    *       Z e r o :           p i d l 1   = =   p i d l 2 
00686  
00687    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00688  
00689  S T D M E T H O D I M P   C R e m o t e F o l d e r : : C o m p a r e I D s (   L P A R A M   l P a r a m ,   L P C I T E M I D L I S T   p i d l 1 , 
00690  
00691                                                                                L P C I T E M I D L I S T   p i d l 2   ) 
00692  
00693  { 
00694  
00695          A T L T R A C E ( " C R e m o t e F o l d e r : : C o m p a r e I D s   c a l l e d \ n " ) ; 
00696  
00697          ( v o i d ) l P a r a m ;   / /   U s e   d e f a u l t   s o r t i n g   r u l e   a l w a y s 
00698  
00699  
00700  
00701          A T L A S S E R T ( p i d l 1   ! =   N U L L ) ;   A T L A S S E R T ( p i d l 2   ! =   N U L L ) ; 
00702  
00703          A T L A S S E R T ( m _ P i d l M a n a g e r . G e t P a t h ( p i d l 1 ) . G e t L e n g t h ( )   >   0   ) ; 
00704  
00705          A T L A S S E R T ( m _ P i d l M a n a g e r . G e t P a t h ( p i d l 2 ) . G e t L e n g t h ( )   >   0   ) ; 
00706  
00707  
00708  
00709          / /   S o r t   b y   f i l e n a m e 
00710  
00711          r e t u r n   M A K E _ H R E S U L T ( S E V E R I T Y _ S U C C E S S ,   0 ,   
00712  
00713                  ( u n s i g n e d   s h o r t ) w c s c m p ( m _ P i d l M a n a g e r . G e t P a t h ( p i d l 1 ) ,   
00714  
00715                                                                m _ P i d l M a n a g e r . G e t P a t h ( p i d l 2 ) ) ) ; 
00716  
00717  } 
00718  
00719  
00720  
00721  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00722  
00723    *   C R e m o t e F o l d e r : : E n u m S e a r c h e s   :   I S h e l l F o l d e r 2 
00724  
00725    *   R e t u r n s   p o i n t e r   t o   i n t e r f a c e   a l l o w i n g   c l i e n t   t o   e n u m e r a t e   s e a r c h   o b j e c t s . 
00726  
00727    *   W e   d o   n o t   s u p p o r t   s e a r c h   o b j e c t s . 
00728  
00729    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00730  
00731  S T D M E T H O D I M P   C R e m o t e F o l d e r : : E n u m S e a r c h e s (   I E n u m E x t r a S e a r c h   * * p p E n u m   ) 
00732  
00733  { 
00734  
00735          A T L T R A C E ( " C R e m o t e F o l d e r : : E n u m S e a r c h e s   c a l l e d \ n " ) ; 
00736  
00737          ( v o i d ) p p E n u m ; 
00738  
00739          r e t u r n   E _ N O I N T E R F A C E ; 
00740  
00741  } 
00742  
00743  
00744  
00745  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00746  
00747    *   C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n   :   I S h e l l F o l d e r 2 
00748  
00749    *   G e t s   t h e   d e f a u l t   s o r t i n g   a n d   d i s p l a y   c o l u m n s . 
00750  
00751    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00752  
00753  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n (   D W O R D   d w R e s e r v e d ,   
00754  
00755                                                                                            _ _ o u t   U L O N G   * p S o r t ,   
00756  
00757                                                                                            _ _ o u t   U L O N G   * p D i s p l a y   ) 
00758  
00759  { 
00760  
00761          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n   c a l l e d \ n " ) ; 
00762  
00763          ( v o i d ) d w R e s e r v e d ; 
00764  
00765  
00766  
00767          / /   S o r t   a n d   d i s p l a y   b y   t h e   f i l e n a m e 
00768  
00769          * p S o r t   =   0 ; 
00770  
00771          * p D i s p l a y   =   0 ; 
00772  
00773  
00774  
00775          r e t u r n   S _ O K ; 
00776  
00777  } 
00778  
00779  
00780  
00781  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00782  
00783    *   C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n S t a t e   :   I S h e l l F o l d e r 2 
00784  
00785    *   R e t u r n s   t h e   d e f a u l t   s t a t e   f o r   t h e   c o l u m n   s p e c i f i e d   b y   i n d e x . 
00786  
00787    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00788  
00789  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n S t a t e (   _ _ i n   U I N T   i C o l u m n ,   
00790  
00791                                                                                                      _ _ o u t   S H C O L S T A T E F   * p c s F l a g s   ) 
00792  
00793  { 
00794  
00795          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n S t a t e   c a l l e d \ n " ) ; 
00796  
00797  
00798  
00799          s w i t c h   ( i C o l u m n ) 
00800  
00801          { 
00802  
00803          c a s e   0 :   / /   D i s p l a y   n a m e   ( L a b e l ) 
00804  
00805          c a s e   1 :   / /   H o s t n a m e 
00806  
00807          c a s e   2 :   / /   U s e r n a m e 
00808  
00809          c a s e   4 :   / /   R e m o t e   f i l e s y s t e m   p a t h 
00810  
00811                  * p c s F l a g s   =   S H C O L S T A T E _ T Y P E _ S T R   |   S H C O L S T A T E _ O N B Y D E F A U L T ;   b r e a k ; 
00812  
00813          c a s e   3 :   / /   S F T P   p o r t 
00814  
00815                  * p c s F l a g s   =   S H C O L S T A T E _ T Y P E _ I N T   |   S H C O L S T A T E _ O N B Y D E F A U L T ;   b r e a k ; 
00816  
00817          c a s e   5 :   / /   T y p e 
00818  
00819                  * p c s F l a g s   =   S H C O L S T A T E _ T Y P E _ S T R   |   S H C O L S T A T E _ S E C O N D A R Y U I ;   b r e a k ; 
00820  
00821          d e f a u l t : 
00822  
00823                  r e t u r n   E _ F A I L ; 
00824  
00825          } 
00826  
00827  
00828  
00829          r e t u r n   S _ O K ; 
00830  
00831  } 
00832  
00833  
00834  
00835  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t D e t a i l s E x (   _ _ i n   P C U I T E M I D _ C H I L D   p i d l ,   
00836  
00837                                                                                    _ _ i n   c o n s t   S H C O L U M N I D   * p s c i d , 
00838  
00839                                                                                    _ _ o u t   V A R I A N T   * p v   ) 
00840  
00841  { 
00842  
00843          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t D e t a i l s E x   c a l l e d \ n " ) ; 
00844  
00845  
00846  
00847          / /   I f   p i d l :   R e q u e s t   i s   f o r   a n   i t e m   d e t a i l .     R e t r i e v e   f r o m   p i d l   a n d 
00848  
00849          / /                     r e t u r n   s t r i n g 
00850  
00851          / /   E l s e :         R e q u e s t   i s   f o r   a   c o l u m n   h e a d i n g .     R e t u r n   h e a d i n g   a s   B S T R 
00852  
00853  
00854  
00855          / /   D i s p l a y   n a m e   ( L a b e l ) 
00856  
00857          i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ I t e m N a m e D i s p l a y ) ) 
00858  
00859          { 
00860  
00861                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ I t e m N a m e D i s p l a y \ n " ) ; 
00862  
00863                  
00864  
00865                  r e t u r n   p i d l   ? 
00866  
00867                          _ F i l l D e t a i l s V a r i a n t (   m _ P i d l M a n a g e r . G e t P a t h ( p i d l ) ,   p v   )   : 
00868  
00869                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " N a m e " ) ,   p v   ) ; 
00870  
00871          } 
00872  
00873          / /   O w n e r 
00874  
00875          e l s e   i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ F i l e O w n e r ) ) 
00876  
00877          { 
00878  
00879                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ F i l e O w n e r \ n " ) ; 
00880  
00881                  
00882  
00883                  r e t u r n   p i d l   ? 
00884  
00885                          _ F i l l D e t a i l s V a r i a n t (   m _ P i d l M a n a g e r . G e t O w n e r ( p i d l ) ,   p v   )   : 
00886  
00887                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " O w n e r " ) ,   p v   ) ; 
00888  
00889          } 
00890  
00891          / /   G r o u p 
00892  
00893          e l s e   i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ S w i s h R e m o t e G r o u p ) ) 
00894  
00895          { 
00896  
00897                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ S w i s h R e m o t e G r o u p \ n " ) ; 
00898  
00899                  
00900  
00901                  r e t u r n   p i d l   ? 
00902  
00903                          _ F i l l D e t a i l s V a r i a n t (   m _ P i d l M a n a g e r . G e t G r o u p ( p i d l ) ,   p v   )   : 
00904  
00905                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " G r o u p " ) ,   p v   ) ; 
00906  
00907          } 
00908  
00909          / /   F i l e   p e r m i s s i o n s :   d r w x r - x r - x   f o r m 
00910  
00911          e l s e   i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ S w i s h R e m o t e P e r m i s s i o n s ) ) 
00912  
00913          { 
00914  
00915                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ S w i s h R e m o t e P e r m i s s i o n s \ n " ) ; 
00916  
00917                  
00918  
00919                  r e t u r n   p i d l   ? 
00920  
00921                          _ F i l l D e t a i l s V a r i a n t (   m _ P i d l M a n a g e r . G e t P e r m i s s i o n s S t r ( p i d l ) ,   p v   )   : 
00922  
00923                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " P e r m i s s i o n s " ) ,   p v   ) ; 
00924  
00925          } 
00926  
00927          / /   F i l e   s i z e   i n   b y t e s 
00928  
00929          e l s e   i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ S i z e ) ) 
00930  
00931          { 
00932  
00933                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ S i z e \ n " ) ; 
00934  
00935                  
00936  
00937                  r e t u r n   p i d l   ? 
00938  
00939                          _ F i l l U I 8 V a r i a n t (   m _ P i d l M a n a g e r . G e t F i l e S i z e ( p i d l ) ,   p v   )   : 
00940  
00941                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " S i z e " ) ,   p v   ) ; 
00942  
00943          } 
00944  
00945          / /   L a s t   m o d i f i e d   d a t e 
00946  
00947          e l s e   i f   ( I s E q u a l P r o p e r t y K e y ( * p s c i d ,   P K E Y _ D a t e M o d i f i e d ) ) 
00948  
00949          { 
00950  
00951                  A T L T R A C E ( " \ t \ t R e q u e s t :   P K E Y _ D a t e M o d i f i e d \ n " ) ; 
00952  
00953  
00954  
00955                  r e t u r n   p i d l   ? 
00956  
00957                          _ F i l l D a t e V a r i a n t (   m _ P i d l M a n a g e r . G e t L a s t M o d i f i e d ( p i d l ) ,   p v   )   : 
00958  
00959                          _ F i l l D e t a i l s V a r i a n t (   _ T ( " L a s t   M o d i f i e d " ) ,   p v   ) ; 
00960  
00961          } 
00962  
00963          A T L T R A C E ( " \ t \ t R e q u e s t :   < u n k n o w n > \ n " ) ; 
00964  
00965  
00966  
00967          / /   A s s e r t   u n l e s s   r e q u e s t   i s   o n e   o f   t h e   s u p p o r t e d   p r o p e r t i e s 
00968  
00969          / /   T O D O :   S y s t e m . F i n d D a t a   t i g g e r s   t h i s 
00970  
00971          / /   U N R E A C H A B L E ; 
00972  
00973  
00974  
00975          r e t u r n   E _ F A I L ; 
00976  
00977  } 
00978  
00979  
00980  
00981  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
00982  
00983    *   C R e m o t e F o l d e r : : G e t D e f a u l t C o l u m n S t a t e   :   I S h e l l F o l d e r 2 
00984  
00985    *   C o n v e r t   c o l u m n   t o   a p p r o p r i a t e   p r o p e r t y   s e t   I D   ( F M T I D )   a n d   p r o p e r t y   I D   ( P I D ) . 
00986  
00987    *   I M P O R T A N T :     T h i s   f u n c t i o n   d e f i n e s   w h i c h   d e t a i l s   a r e   s u p p o r t e d   a s 
00988  
00989    *   G e t D e t a i l s O f ( )   j u s t   f o r w a r d s   t h e   c o l u m n I D   h e r e .     T h e   f i r s t   c o l u m n   t h a t   w e 
00990  
00991    *   r e t u r n   E _ F A I L   f o r   m a r k s   t h e   e n d   o f   t h e   s u p p o r t e d   d e t a i l s . 
00992  
00993    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
00994  
00995  S T D M E T H O D I M P   C R e m o t e F o l d e r : : M a p C o l u m n T o S C I D (   _ _ i n   U I N T   i C o l u m n ,   
00996  
00997                                                                                          _ _ o u t   P R O P E R T Y K E Y   * p s c i d   ) 
00998  
00999  { 
01000  
01001          A T L T R A C E ( " C R e m o t e F o l d e r : : M a p C o l u m n T o S C I D   c a l l e d \ n " ) ; 
01002  
01003  
01004  
01005          s w i t c h   ( i C o l u m n ) 
01006  
01007          { 
01008  
01009          c a s e   0 :   / /   D i s p l a y   n a m e   ( L a b e l ) 
01010  
01011                  * p s c i d   =   P K E Y _ I t e m N a m e D i s p l a y ;   b r e a k ; 
01012  
01013          c a s e   1 :   / /   O w n e r 
01014  
01015                  * p s c i d   =   P K E Y _ F i l e O w n e r ;   b r e a k ; 
01016  
01017          c a s e   2 :   / /   G r o u p 
01018  
01019                  * p s c i d   =   P K E Y _ S w i s h R e m o t e G r o u p ;   b r e a k ; 
01020  
01021          c a s e   3 :   / /   F i l e   P e r m i s s i o n s :   d r w x r - x r - x   f o r m 
01022  
01023                  * p s c i d =   P K E Y _ S w i s h R e m o t e P e r m i s s i o n s ;   b r e a k ; 
01024  
01025          c a s e   4 :   / /   F i l e   s i z e   i n   b y t e s 
01026  
01027                  * p s c i d   =   P K E Y _ S i z e ;   b r e a k ; 
01028  
01029          c a s e   5 :   / /   L a s t   m o d i f i e d   d a t e 
01030  
01031                  * p s c i d   =   P K E Y _ D a t e M o d i f i e d ;   b r e a k ; 
01032  
01033          d e f a u l t : 
01034  
01035                  r e t u r n   E _ F A I L ; 
01036  
01037          } 
01038  
01039  
01040  
01041          r e t u r n   S _ O K ; 
01042  
01043  } 
01044  
01045  
01046  
01047  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01048  
01049    *   C R e m o t e F o l d e r : : C o m p a r e I D s   :   I E x t r a c t I c o n 
01050  
01051    *   E x t r a c t   a n   i c o n   b i t m a p   g i v e n   t h e   i n f o r m a t i o n   p a s s e d . 
01052  
01053    *   W e   r e t u r n   S _ F A L S E   t o   t e l l   t h e   s h e l l   t o   e x t r a c t   t h e   i c o n s   i t s e l f . 
01054  
01055    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01056  
01057  S T D M E T H O D I M P   C R e m o t e F o l d e r : : E x t r a c t (   L P C T S T R ,   U I N T ,   H I C O N   * ,   H I C O N   * ,   U I N T   ) 
01058  
01059  { 
01060  
01061          A T L T R A C E ( " C R e m o t e F o l d e r : : E x t r a c t   c a l l e d \ n " ) ; 
01062  
01063          r e t u r n   S _ F A L S E ; 
01064  
01065  } 
01066  
01067  
01068  
01069  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01070  
01071    *   C R e m o t e F o l d e r : : C o m p a r e I D s   :   I E x t r a c t I c o n 
01072  
01073    *   R e t r i e v e   t h e   l o c a t i o n   o f   t h e   a p p r o p r i a t e   i c o n . 
01074  
01075    *   W e   s e t   a l l   S F T P   h o s t s   t o   h a v e   t h e   i c o n   f r o m   s h e l l 3 2 . d l l . 
01076  
01077    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01078  
01079  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t I c o n L o c a t i o n ( 
01080  
01081          _ _ i n   U I N T   u F l a g s ,   _ _ o u t _ e c o u n t ( c c h M a x )   L P T S T R   s z I c o n F i l e ,   
01082  
01083          _ _ i n   U I N T   c c h M a x ,   _ _ o u t   i n t   * p i I n d e x ,   _ _ o u t   U I N T   * p w F l a g s   ) 
01084  
01085  { 
01086  
01087          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t I c o n L o c a t i o n   c a l l e d \ n " ) ; 
01088  
01089          ( v o i d ) u F l a g s ;   / /   t y p e   o f   u s e   i s   i g n o r e d   f o r   h o s t   f o l d e r 
01090  
01091  
01092  
01093          / /   S e t   h o s t   t o   h a v e   t h e   I C S   h o s t   i c o n 
01094  
01095          S t r i n g C c h C o p y ( s z I c o n F i l e ,   c c h M a x ,   _ T ( " C : \ \ W I N D O W S \ \ s y s t e m 3 2 \ \ s h e l l 3 2 . d l l " ) ) ; 
01096  
01097          * p i I n d e x   =   1 7 ; 
01098  
01099          * p w F l a g s   =   G I L _ D O N T C A C H E ; 
01100  
01101  
01102  
01103          r e t u r n   S _ O K ; 
01104  
01105  } 
01106  
01107  
01108  
01109  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01110  
01111    *   C R e m o t e F o l d e r : : G e t D e t a i l s O f   :   I S h e l l D e t a i l s 
01112  
01113    *   R e t u r n s   d e t a i l e d   i n f o r m a t i o n   o n   t h e   i t e m s   i n   a   f o l d e r . 
01114  
01115    *   T h i s   f u n c t i o n   o p e r a t e s   i n   t w o   d i s t i n c t l y   d i f f e r e n t   w a y s : 
01116  
01117    *   I f   p i d l   i s   N U L L : 
01118  
01119    *           R e t r i e v e s   t h e   i n f o r m a t i o n   o n   t h e   v i e w   c o l u m n s ,   i . e . ,   t h e   n a m e s   o f 
01120  
01121    *           t h e   c o l u m n s   t h e m s e l v e s .     T h e   i n d e x   o f   t h e   d e s i r e d   c o l u m n   i s   g i v e n 
01122  
01123    *           i n   i C o l u m n .     I f   t h i s   c o l u m n   d o e s   n o t   e x i s t   w e   r e t u r n   E _ F A I L . 
01124  
01125    *   I f   p i d l   i s   n o t   N U L L : 
01126  
01127    *           R e t r i e v e s   t h e   s p e c i f i c   i t e m   i n f o r m a t i o n   f o r   t h e   g i v e n   p i d l   a n d   t h e 
01128  
01129    *           r e q u e s t e d   c o l u m n . 
01130  
01131    *   T h e   i n f o r m a t i o n   i s   r e t u r n e d   i n   t h e   S H E L L D E T A I L S   s t r u c t u r e . 
01132  
01133    * 
01134  
01135    *   M o s t   o f   t h e   w o r k   i s   d e l e g a t e d   t o   G e t D e t a i l s E x   b y   c o n v e r t i n g   t h e   c o l u m n 
01136  
01137    *   i n d e x   t o   a   P K E Y   w i t h   M a p C o l u m n T o S C I D .     T h i s   f u n c t i o n   a l s o   n o w   d e t e r m i n e s 
01138  
01139    *   w h a t   t h e   i n d e x   o f   t h e   l a s t   s u p p o r t e d   d e t a i l   i s . 
01140  
01141    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01142  
01143  S T D M E T H O D I M P   C R e m o t e F o l d e r : : G e t D e t a i l s O f (   _ _ i n _ o p t   P C U I T E M I D _ C H I L D   p i d l ,   
01144  
01145                                                                                    _ _ i n   U I N T   i C o l u m n ,   
01146  
01147                                                                                    _ _ o u t   L P S H E L L D E T A I L S   p D e t a i l s   ) 
01148  
01149  { 
01150  
01151          A T L T R A C E ( " C R e m o t e F o l d e r : : G e t D e t a i l s O f   c a l l e d ,   i C o l u m n = % u \ n " ,   i C o l u m n ) ; 
01152  
01153  
01154  
01155          P R O P E R T Y K E Y   p k e y ; 
01156  
01157  
01158  
01159          / /   L o o k u p   P K E Y   a n d   u s e   i t   t o   c a l l   G e t D e t a i l s E x 
01160  
01161          H R E S U L T   h r   =   M a p C o l u m n T o S C I D ( i C o l u m n ,   & p k e y ) ; 
01162  
01163          i f   ( S U C C E E D E D ( h r ) ) 
01164  
01165          { 
01166  
01167                  V A R I A N T   p v ; 
01168  
01169  
01170  
01171                  / /   G e t   d e t a i l s   a n d   c o n v e r t   V A R I A N T   r e s u l t   t o   S H E L L D E T A I L S   f o r   r e t u r n 
01172  
01173                  h r   =   G e t D e t a i l s E x ( p i d l ,   & p k e y ,   & p v ) ; 
01174  
01175                  i f   ( S U C C E E D E D ( h r ) ) 
01176  
01177                  { 
01178  
01179                          C S t r i n g   s t r S r c ; 
01180  
01181  
01182  
01183                          s w i t c h   ( p v . v t ) 
01184  
01185                          { 
01186  
01187                          c a s e   V T _ B S T R : 
01188  
01189                                  s t r S r c   =   p v . b s t r V a l ; 
01190  
01191                                  : : S y s F r e e S t r i n g ( p v . b s t r V a l ) ; 
01192  
01193  
01194  
01195                                  i f ( ! p i d l )   / /   H e a d e r   r e q u e s t e d 
01196  
01197                                          p D e t a i l s - > f m t   =   L V C F M T _ L E F T ; 
01198  
01199                                  b r e a k ; 
01200  
01201                          c a s e   V T _ U I 8 : 
01202  
01203                                  s t r S r c . F o r m a t ( _ T ( " % u " ) ,   p v . u l l V a l ) ; 
01204  
01205  
01206  
01207                                  i f ( ! p i d l )   / /   H e a d e r   r e q u e s t e d 
01208  
01209                                          p D e t a i l s - > f m t   =   L V C F M T _ R I G H T ; 
01210  
01211                                  b r e a k ; 
01212  
01213                          c a s e   V T _ D A T E : 
01214  
01215                                  { 
01216  
01217                                  C T i m e   t i m e   =   p v . d a t e ; 
01218  
01219                                  s t r S r c   =   t i m e . F o r m a t ( _ T ( " " ) ) ; 
01220  
01221                                  i f ( ! p i d l )   / /   H e a d e r   r e q u e s t e d 
01222  
01223                                          p D e t a i l s - > f m t   =   L V C F M T _ L E F T ; 
01224  
01225                                  b r e a k ; 
01226  
01227                                  } 
01228  
01229                          d e f a u l t : 
01230  
01231                                  U N R E A C H A B L E ; 
01232  
01233                          } 
01234  
01235  
01236  
01237                          p D e t a i l s - > s t r . u T y p e   =   S T R R E T _ W S T R ; 
01238  
01239                          S H S t r D u p ( s t r S r c ,   & p D e t a i l s - > s t r . p O l e S t r ) ; 
01240  
01241  
01242  
01243                          i f ( ! p i d l )   / /   H e a d e r   r e q u e s t e d 
01244  
01245                                  p D e t a i l s - > c x C h a r   =   s t r S r c . G e t L e n g t h ( ) ^ 2 ; 
01246  
01247                  } 
01248  
01249  
01250  
01251                  V a r i a n t C l e a r (   & p v   ) ; 
01252  
01253          } 
01254  
01255  
01256  
01257          r e t u r n   h r ; 
01258  
01259  } 
01260  
01261  
01262  
01263  S T D M E T H O D I M P   C R e m o t e F o l d e r : : C o l u m n C l i c k (   U I N T   i C o l u m n   ) 
01264  
01265  { 
01266  
01267          A T L T R A C E ( " C R e m o t e F o l d e r : : C o l u m n C l i c k   c a l l e d \ n " ) ; 
01268  
01269          ( v o i d ) i C o l u m n ; 
01270  
01271          r e t u r n   S _ F A L S E ; 
01272  
01273  } 
01274  
01275  
01276  
01277  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01278  
01279  / *   - - -   P r i v a t e   f u n c t i o n s   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01280  
01281  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01282  
01283  
01284  
01285  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01286  
01287    *   C R e m o t e F o l d e r : : _ G e t L o n g N a m e F r o m P I D L 
01288  
01289    *   R e t r i e v e   t h e   l o n g   n a m e   o f   t h e   h o s t   c o n n e c t i o n   f r o m   t h e   g i v e n   P I D L . 
01290  
01291    *   T h e   l o n g   n a m e   i s   e i t h e r   t h e   c a n o n i c a l   f o r m   i f   f C a n o n i c a l   i s   s e t : 
01292  
01293    *           s f t p : / / u s e r n a m e @ h o s t n a m e : p o r t / p a t h 
01294  
01295    *   o r ,   i f   n o t   s e t   a n d   i f   t h e   p o r t   i s   t h e   d e f a u l t   p o r t   t h e   r e d u c e d   f o r m : 
01296  
01297    *           s f t p : / / u s e r n a m e @ h o s t n a m e / p a t h 
01298  
01299    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01300  
01301  C S t r i n g   C R e m o t e F o l d e r : : _ G e t L o n g N a m e F r o m P I D L (   P C U I T E M I D _ C H I L D   p i d l ,   
01302  
01303                                                                                        B O O L   f C a n o n i c a l   ) 
01304  
01305  { 
01306  
01307          A T L T R A C E ( " C R e m o t e F o l d e r : : _ G e t L o n g N a m e F r o m P I D L   c a l l e d \ n " ) ; 
01308  
01309  
01310  
01311          C S t r i n g   s t r N a m e ; 
01312  
01313          A T L A S S E R T ( S U C C E E D E D ( m _ P i d l M a n a g e r . I s V a l i d ( p i d l ) ) ) ; 
01314  
01315  / * 
01316  
01317          / /   C o n s t r u c t   s t r i n g   f r o m   i n f o   i n   P I D L 
01318  
01319          s t r N a m e   =   _ T ( " s f t p : / / " ) ; 
01320  
01321          s t r N a m e   + =   m _ P i d l M a n a g e r . G e t U s e r ( p i d l ) ; 
01322  
01323          s t r N a m e   + =   _ T ( " @ " ) ; 
01324  
01325          s t r N a m e   + =   m _ P i d l M a n a g e r . G e t H o s t ( p i d l ) ; 
01326  
01327          i f   ( f C a n o n i c a l   | |   ( m _ P i d l M a n a g e r . G e t P o r t ( p i d l )   ! =   S F T P _ D E F A U L T _ P O R T ) ) 
01328  
01329          { 
01330  
01331                  s t r N a m e   + =   _ T ( " : " ) ; 
01332  
01333                  s t r N a m e . A p p e n d F o r m a t (   _ T ( " % u " ) ,   m _ P i d l M a n a g e r . G e t P o r t ( p i d l )   ) ; 
01334  
01335          } 
01336  
01337          s t r N a m e   + =   _ T ( " / " ) ; 
01338  
01339          s t r N a m e   + =   m _ P i d l M a n a g e r . G e t P a t h ( p i d l ) ; 
01340  
01341  
01342  
01343          A T L A S S E R T (   s t r N a m e . G e t L e n g t h ( )   < =   M A X _ C A N O N I C A L _ L E N   ) ; 
01344  
01345  * / 
01346  
01347          r e t u r n   s t r N a m e ; 
01348  
01349  } 
01350  
01351  
01352  
01353  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01354  
01355    *   C R e m o t e F o l d e r : : _ G e t L a b e l F r o m P I D L 
01356  
01357    *   R e t r i e v e   t h e   u s e r - a s s i g n e d   l a b e l   o f   t h e   h o s t   c o n n e c t i o n   f r o m   t h e   g i v e n   P I D L . 
01358  
01359    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01360  
01361  C S t r i n g   C R e m o t e F o l d e r : : _ G e t L a b e l F r o m P I D L (   P C U I T E M I D _ C H I L D   p i d l   ) 
01362  
01363  { 
01364  
01365          A T L T R A C E ( " C R e m o t e F o l d e r : : _ G e t L a b e l F r o m P I D L   c a l l e d \ n " ) ; 
01366  
01367  
01368  
01369          C S t r i n g   s t r N a m e ; 
01370  
01371          A T L A S S E R T ( S U C C E E D E D ( m _ P i d l M a n a g e r . I s V a l i d ( p i d l ) ) ) ; 
01372  
01373  
01374  
01375          / /   C o n s t r u c t   s t r i n g   f r o m   i n f o   i n   P I D L 
01376  
01377          s t r N a m e   =   m _ P i d l M a n a g e r . G e t P a t h ( p i d l ) ; 
01378  
01379  
01380  
01381          A T L A S S E R T (   s t r N a m e . G e t L e n g t h ( )   < =   M A X _ L A B E L _ L E N   ) ; 
01382  
01383  
01384  
01385          r e t u r n   s t r N a m e ; 
01386  
01387  } 
01388  
01389  
01390  
01391  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01392  
01393    *   C R e m o t e F o l d e r : : _ F i l l D e t a i l s V a r i a n t 
01394  
01395    *   I n i t i a l i s e   t h e   V A R I A N T   w h o s e   p o i n t e r   i s   p a s s e d   a n d   f i l l   w i t h   s t r i n g   d a t a . 
01396  
01397    *   T h e   s t r i n g   d a t a   c a n   b e   p a s s e d   i n   a s   a   w c h a r   a r r a y   o r   a   C S t r i n g .     W e   a l l o c a t e 
01398  
01399    *   a   n e w   B S T R   a n d   s t o r e   i t   i n   t h e   V A R I A N T . 
01400  
01401    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01402  
01403  H R E S U L T   C R e m o t e F o l d e r : : _ F i l l D e t a i l s V a r i a n t (   _ _ i n   P C W S T R   s z D e t a i l , 
01404  
01405                                                                                        _ _ o u t   V A R I A N T   * p v   ) 
01406  
01407  { 
01408  
01409          A T L T R A C E ( " C R e m o t e F o l d e r : : _ F i l l D e t a i l s V a r i a n t   c a l l e d \ n " ) ; 
01410  
01411  
01412  
01413          : : V a r i a n t I n i t (   p v   ) ; 
01414  
01415          p v - > v t   =   V T _ B S T R ; 
01416  
01417          p v - > b s t r V a l   =   : : S y s A l l o c S t r i n g (   s z D e t a i l   ) ; 
01418  
01419  
01420  
01421          r e t u r n   p v - > b s t r V a l   ?   S _ O K   :   E _ O U T O F M E M O R Y ; 
01422  
01423  } 
01424  
01425  
01426  
01427  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01428  
01429    *   C R e m o t e F o l d e r : : _ F i l l D a t e V a r i a n t 
01430  
01431    *   I n i t i a l i s e   t h e   V A R I A N T   w h o s e   p o i n t e r   i s   p a s s e d   a n d   f i l l   w i t h   d a t e   i n f o . 
01432  
01433    *   T h e   d a t e   i s   p a s s e d   a s   a   C T i m e . 
01434  
01435    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01436  
01437  H R E S U L T   C R e m o t e F o l d e r : : _ F i l l D a t e V a r i a n t (   _ _ i n   C T i m e   d t D a t e ,   _ _ o u t   V A R I A N T   * p v   ) 
01438  
01439  { 
01440  
01441          A T L T R A C E ( " C R e m o t e F o l d e r : : _ F i l l D a t e V a r i a n t   c a l l e d \ n " ) ; 
01442  
01443  
01444  
01445          : : V a r i a n t I n i t (   p v   ) ; 
01446  
01447          p v - > v t   =   V T _ D A T E ; 
01448  
01449  
01450  
01451          / /   C o n v e r t   t o   S y s t e m   T i m e 
01452  
01453          S Y S T E M T I M E   s t T e m p ; 
01454  
01455          A T L V E R I F Y ( d t D a t e . G e t A s S y s t e m T i m e ( s t T e m p ) ) ; 
01456  
01457  
01458  
01459          / /   C o n v e r t   t o   V A R I A N T   t i m e 
01460  
01461          : : S y s t e m T i m e T o V a r i a n t T i m e ( & s t T e m p ,   & p v - > d a t e ) ; 
01462  
01463          
01464  
01465          / /   T O D O :   T h e r e   m a y   b e   a   b e t t e r   w a y   t o   d o   t h i s   t h a n   t h i s   l o n g   c h a i n   o f 
01466  
01467          / /               c o n v e r s i o n s   b u t   u s i n g   C O l e D a t e T i m e   i s   a w k w a r d 
01468  
01469  
01470  
01471          r e t u r n   p v - > d a t e   ?   S _ O K   :   E _ F A I L ; 
01472  
01473  } 
01474  
01475  
01476  
01477  / * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
01478  
01479    *   C R e m o t e F o l d e r : : _ F i l l D a t e V a r i a n t 
01480  
01481    *   I n i t i a l i s e   t h e   V A R I A N T   w h o s e   p o i n t e r   i s   p a s s e d   a n d   f i l l   w i t h   6 4 - b i t   u n s i g n e d . 
01482  
01483    * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * / 
01484  
01485  H R E S U L T   C R e m o t e F o l d e r : : _ F i l l U I 8 V a r i a n t (   _ _ i n   U L O N G L O N G   u l l ,   _ _ o u t   V A R I A N T   * p v   ) 
01486  
01487  { 
01488  
01489          A T L T R A C E ( " C R e m o t e F o l d e r : : _ F i l l U I 8 V a r i a n t   c a l l e d \ n " ) ; 
01490  
01491  
01492  
01493          : : V a r i a n t I n i t (   p v   ) ; 
01494  
01495          p v - > v t   =   V T _ U I 8 ; 
01496  
01497          p v - > u l l V a l   =   u l l ; 
01498  
01499  
01500  
01501          r e t u r n   S _ O K ;   / /   T O D O :   r e t u r n   s u c c e s s   o f   V a r i a n t I n i t 
01502  
01503  } 
01504  
01505  
01506  
01507  / /   C R e m o t e F o l d e r 
01508  
01509  
01510  
01511  

Generated on Mon Nov 12 22:43:54 2007 for Swish by  doxygen 1.5.3