Re: Recurse issue - 2nd try
- From: "Rafael T" <okinawapro@xxxxxxxxxxx>
- Date: Tue, 5 Jul 2005 11:38:19 +0900
Jeff,
is your script hanging or does it complete but somehow misses some folders?
There are two issues when checking folders:
- Recursion uses lots of memory which can stop certain iterations of your
recursive call making it miss some folders
- Folder permissions might stop your program even if you are the
administrator (unless all your folders are own by your account)
try catching the error and post it, so we can see it
Rafael
"Jeff" <zeppdaddy@xxxxxxxxx> wrote in message
news:%23uo3AFMgFHA.3232@xxxxxxxxxxxxxxxxxxxxxxx
>I am writing a script to look for duplicate files (regardless of
>extention).
>
> This script appears to be working as desired except that it stops short
> while recursing through the subfolders.
>
> I am a relative newbie, can anyone help point me in the right direction?
>
> Any help is most appreciated.
>
> I have included my code for review.
>
> Thanks a million!!
>
>
> --- Begin Code ---
>
> ' -- NCDupeFinder.vbs
>
> ' *********************************
> ' Constants
> ' *********************************
>
> Const MCAM_FOLDER_ROOT = "R:\MCNC\"
> Const ESPRIT_FOLDER_ROOT = "R:\NC\"
> Const LOG_FILE = "C:\DuplicateLog.txt"
>
> ' -- Start Script
>
> On Error Resume Next
>
> Query = MsgBox("This script searches for duplicate NC code and may take a
> moment, do you wish to proceed?", vbYesNo + 32 + 256, "NCDupeFinder.vbs")
>
> If Query = 6 Then 'yes
>
> Dim oFSO
> Dim sLogFile
>
> Set oFSO = CreateObject("Scripting.FileSystemObject")
>
> If oFSO.FileExists(LOG_FILE) Then
> oFSO.DeleteFile(LOG_FILE)
> End If
>
> Set sLogFile = oFSO.OpenTextFile(LOG_FILE, 8, True)
>
> sLogFile.WriteLine("Log File Written: " & Date & " @ " & Time)
> sLogFile.WriteLine("")
>
> CheckAllFiles oFSO.GetFolder(MCAM_FOLDER_ROOT)
>
> ' -- View Log File
> ViewLog = MsgBox("Log complete, would you like to view the log now?",
> vbYesNo + 32 + 256, "Message")
>
> If ViewLog = 6 Then 'yes
> Set WshShell = WScript.CreateObject( "WScript.Shell" )
> WshShell.Run ("Notepad.exe " & LOG_FILE) 'open log file
> End If
>
> Else MsgBox "Script cancelled by user."
>
> End If
>
> ' *********************************
> ' CheckAllFiles Sub-Routine
> ' *********************************
>
> Sub CheckAllFiles(oFolder)
> Dim oSubFolder, oFile
> Dim sNCfilename, sMCNCfilename
> Dim intPos
>
> For Each oFile In oFolder.Files
> sMCNCfilename = oFile.Path
> sNCfilename = Replace(sMCNCfilename, MCAM_FOLDER_ROOT,
> ESPRIT_FOLDER_ROOT)
> intPos = InStrRev(sNCfilename, ".")
> sNCfilename = Left(sNCfilename, intPos - 1)
>
> If oFSO.FileExists(sNCfilename & ".nc") Then
> sLogFile.WriteLine(sNCfilename & ".nc")
>
> ElseIf oFSO.FileExists(sNCfilename & ".cnc") Then
> sLogFile.WriteLine(sNCfilename & ".cnc")
>
> ElseIf oFSO.FileExists(sNCfilename & ".min") Then
> sLogFile.WriteLine(sNCfilename & ".min")
>
> ElseIf oFSO.FileExists(sNCfilename & ".iso") Then
> sLogFile.WriteLine(sNCfilename & ".iso")
>
> End If
>
> Next
>
> For Each oSubFolder In oFolder.SubFolders
> CheckAllFiles oSubFolder
> Next
>
> End Sub
>
> --- End Code ---
>
>
.
- Follow-Ups:
- Re: Recurse issue - 2nd try
- From: Jeff
- Re: Recurse issue - 2nd try
- References:
- Recurse issue - 2nd try
- From: Jeff
- Recurse issue - 2nd try
- Prev by Date: Re: Recurse issue - 2nd try
- Next by Date: Re: Parsing binary values in the registry
- Previous by thread: Re: Recurse issue - 2nd try
- Next by thread: Re: Recurse issue - 2nd try
- Index(es):
Relevant Pages
|
Loading