Changeset 348 for branches/guitools-2.0/shared/smbtree.vrs
- Timestamp:
- Dec 9, 2009, 7:48:45 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/guitools-2.0/shared/smbtree.vrs
r347 r348 3 3 /*:VRX */ 4 4 _RefreshTree: 5 say "_RefreshTree() started"5 say time()' _RefreshTree() started' 6 6 FirstRun = 0 7 7 8 8 ok = SysFileDelete(samba.!msg) 9 9 10 if UserCred = 'USERCRED' | UserCred = '' | UserCred = '--user=%' then do 11 UserCred = '-N' 12 end 13 10 if UserCred = 'USERCRED' | UserCred = '' | UserCred = '--user=%' then UserCred = '-N' 14 11 if ShowHidden = 'SHOWHIDDEN' | ShowHidden = '' then ShowHidden = 0 15 12 16 say 'detach 'samba.!smbtreeexe' -S 'debuglevel' 'UserCred' >'samba.!msg 17 address cmd 'detach 'samba.!smbtreeexe' -S 'debuglevel' 'UserCred' >'samba.!msg 18 13 if BroadCast = 1 then BroadCast = '-b'; else BroadCast = '' 14 15 say ' detach 'samba.!smbtreeexe' 'BroadCast' -S 'debuglevel' 'UserCred' >'samba.!msg 16 address cmd 'detach 'samba.!smbtreeexe' 'BroadCast' -S 'debuglevel' 'UserCred' >'samba.!msg 17 18 if BroadCast = '-b' then BroadCast = 1; else BroadCast = 0 19 19 if UserCred = '-N' then UserCred = '' 20 20 … … 25 25 ok = VRset("TM_RefreshTreeDisplay","Enabled",1) 26 26 27 say "_RefreshTree() done"27 say time()' _RefreshTree() done' 28 28 return 29 29 30 30 /*:VRX */ 31 _RefreshTreeDisplay: 31 _RefreshTreeDisplay: 32 say time()' _RefreshTreeDisplay() started' 32 33 stat = stream(samba.!msg,'c','open read') 33 34 if stat <> "READY:" then return … … 84 85 comment = strip(comment) 85 86 if VRGet("CN_smbtree","View") = "IconTree" then parent = smbtree.!workgroup; else parent = "" 86 ok = VRSet( "CN_smbtree", "Painting", 1 )87 87 smbtree.!machine = VRMethod( "CN_smbtree", "AddRecord",parent,, machine||'0D0A'x||comment) 88 88 /* We make any machine as sleeping initially */ … … 90 90 ok = VRMethod( "CN_smbtree", "SetRecordAttr", smbtree.!machine, "ReadOnly", 1) 91 91 ok = VRMethod( "CN_smbtree", "SetFieldData", smbtree.!machine, NBFH, machine, CommentFH, Comment, WorkGroupFH, CurWG) 92 ok = VRSet( "CN_smbtree", "Painting", 1 ) 92 93 ok = VRSet( "CN_smbtree", "Painting", 0 ) 93 94 if VRGet("CN_smbtree","View") = "Detail" then do … … 138 139 when smbtreeline.sl = "" then nop 139 140 otherwise do 140 say ' Workgroup: "'smbtreeline.sl'"'141 say ' Workgroup: "'smbtreeline.sl'"' 141 142 if pos("RECEIVING",translate(smbtreeline.sl)) > 0 then do 142 143 Msg.Type = "W" … … 164 165 ok = VRSet("TM_Throbber","Enabled", 0) 165 166 ok = VRSet("Pict_Throbber","Visible", 0) 167 say time()' _RefreshTreeDisplay() done' 166 168 return 167 169 168 /*:VRX _RefreshShares 169 */ 170 /*:VRX _RefreshShares */ 170 171 _RefreshShares: 171 say "_RefreshShares() started"172 say time()' _RefreshShares() started' 172 173 RefreshID = RANDOM() 173 174 smbmachine = TempDir||"smbmachine."||machine 174 175 175 say 'detach 'samba.!smbclientexe' -L "'strip(machine)'" 'UserCred' 'debuglevel' 1>'smbmachine' 2>NUL'176 say ' detach 'samba.!smbclientexe' -L "'strip(machine)'" 'UserCred' 'debuglevel' 1>'smbmachine' 2>NUL' 176 177 address cmd 'detach 'samba.!smbclientexe' -L "'strip(machine)'" 'UserCred' 'debuglevel' 1>'smbmachine' 2>NUL' 177 178 … … 180 181 ok = VRSet("CN_smbtree","Enabled", 0) 181 182 ok = VRset("TM_RefreshTreeDisplay","Enabled",1) 183 say time()' _RefreshShares() done' 182 184 return 183 185 … … 185 187 */ 186 188 _AddSharesDisplay: /* New get shares code - uses smbclient output and is much faster */ 187 say "_AddSharesDisplay() started"189 say time()' _AddSharesDisplay() started' 188 190 189 191 ok = SysFileTree(Tempdir||'smbmachine.*',smbmachine.,'FO') 190 say ' 'smbmachine.0' file(s) to process.'192 say ' 'smbmachine.0' file(s) to process.' 191 193 192 194 if smbmachine.0 = 0 then do /* we are done, no more files around, cleanup, disable Timer and exit */ … … 194 196 ok = VRSet("CN_smbtree","Enabled", 1) 195 197 ok = VRset("TM_RefreshTreeDisplay","Enabled",0) 196 say "_AddSharesDisplay() completed" 198 ok = VRSet( "CN_smbtree", "Painting", 0 ) 199 ok = VRSet( "CN_smbtree", "Painting", 1 ) 200 say time()' _AddSharesDisplay() completed' 197 201 return /* exit here */ 198 202 end 199 203 200 if UserCred = 'USERCRED' | UserCred = '' | UserCred = '--user=%' then do 201 UserCred = '-N' 202 end 203 204 if UserCred = 'USERCRED' | UserCred = '' | UserCred = '--user=%' then UserCred = '-N' 204 205 if ShowHidden = 'SHOWHIDDEN' | ShowHidden = '' then ShowHidden = 0 205 206 … … 215 216 216 217 if smbtree.!machine = "" then do /* invalid (old) file */ 217 say "_AddSharesDisplay() exit with Invalid file found (no corresponding machine)"218 say time()' _AddSharesDisplay() exit with Invalid file found (no corresponding machine)' 218 219 ok = stream(smbmachine.I,'c','close') 219 220 ok = SysFileDelete(smbmachine.I) … … 225 226 226 227 if pos("FAIL", translate(line)) > 0 then do /* we see an error message - the term "FAIL" seems to be common to all */ 227 say '_AddSharesDisplay() exit with "'line'"'228 say time()' _AddSharesDisplay() exit with "'line'"' 228 229 ok = stream(smbmachine.I,'c','close') 229 230 ok = SysFileDelete(smbmachine.I) … … 237 238 say ' Skip 'retries' "'line'"' 238 239 if retries >=10 then do /* No valid output - error */ 239 say "_AddSharesDisplay() exit with invalid output error"240 say time()' _AddSharesDisplay() exit with invalid output error' 240 241 ok = stream(smbmachine.I,'c','close') 241 242 ok = SysFileDelete(smbmachine.I) … … 297 298 end 298 299 299 say "_AddSharesDisplay() success and cleanup"300 say time()' _AddSharesDisplay() success and cleanup' 300 301 ok = stream(smbmachine.I,'c','close') 301 302 ok = SysFileDelete(smbmachine.I) 302 if ok <> 0 then say ' Failure 'ok' deleting "'smbmachine.I'"!'303 if ok <> 0 then say ' Failure 'ok' deleting "'smbmachine.I'"!' 303 304 end 304 305 else say ' Got "'stat'" for "'smbmachine.I'"' 305 306 end 306 say "_AddSharesDisplay() loop end"307 say time()' _AddSharesDisplay() loop end' 307 308 return 308 309
Note:
See TracChangeset
for help on using the changeset viewer.