Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to work with files in system/hidden folders
Message
De
08/01/2000 14:34:06
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00314887
Message ID:
00314966
Vues:
55
This message has been marked as the solution to the initial question of the thread.
>Jim,
>
>ADIR() can read those folders.
>
>
lcDir = "c:\windows\temporary internet files\"
>
>create cursor tempfiles ( cFilename c(80), nSize n(10), dMod d )
>n = adir( laFolders, lcDir + "*.*", "shd" )
>
>for i = 1 to n
>   if ( ( "S" $ laFolders[i,5] ) and ( "D" $ laFolders[i,5] ) and ;
>        ! ( "." $ laFolders[i,1] ) )
>      lcFolder = lcDir + laFolders[i,1] + "\"
>      m = adir( laFiles, lcFolder + "*.*" )
>      for j = 1 to m
>         insert into tempfiles ;
>            values( lcFolder + laFiles[j,1], laFiles[j,2], laFiles[j,3] )
>      endfor
>   endif
>endfor
>
>index on nSize tag nSize
>
>browse nowait
>

Dave, ADIR() will read them, but there are anomalies in ADIR()'s behavior with some legal LFNs, and I've had problems copying files into System/Hidden folders. Scripting.FileSystemObject doesn't have these problems, and offers lots of additional functionality as well, like access to the file attributes, copy and move operations for folders or files, and lots of useful details like short names, short paths, and all three file dates if the underlying file system supports them!

The following is a similar function using the Scripting.FileSystemObject, :
create cursor tempfiles ( cFilename c(200), nSize I, dMod d, FolderAttr I, FileAttr I )
oFSO = CreateObject('Scripting.FileSystemObject')
oFolder = oFSO.GetFolder('c:\')
=RecurseFolder(oFolder, 'tempfiles')
INDEX ON nSize TAG nSize
BROWSE

FUNCTION RecurseFolder
LPARAMETER toFolderObject, tcAliasName
FOR EACH oFile IN toFolderObject.Files
   INSERT INTO (tcAliasName) ;
VALUES (oFile.Path, oFile.Size, ;
oFile.DateLastModified, toFolderObject.Attributes, oFile.Attributes)
ENDFOR
FOR EACH oSubFolder in toFOlderObject.SubFolders
   RecurseFolder(oSubFolder,tcAliasName)
ENDFOR
toFolderObject = NULL
RETURN
>>Anybody know any tricks to get Fox to see files stored in system/hidden directories with file related commands (i.e. FILE(), GETFILE(), COPY FILE)? I am working on a little utility that parses an html file which is being stored by I.E. in a system folder 'temp internet files\content.ie5'. None of the VFP commands will see the file because the directory is marked as system directory and I can't seem to change it. I can copy the file out to another directory using Explorer and then work with it in VFP, but I'd like to be able to do this in code.
EMail: EdR@edrauh.com
"See, the sun is going down..."
"No, the horizon is moving up!"
- Firesign Theater


NT and Win2K FAQ .. cWashington WSH/ADSI/WMI site
MS WSH site ........... WSH FAQ Site
Wrox Press .............. Win32 Scripting Journal
eSolutions Services, LLC

The Surgeon General has determined that prolonged exposure to the Windows Script Host may be addictive to laboratory mice and codemonkeys
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform