我想写一个LS代理来扫描窗口中的目录,例如:'C:\'用于任何文件和子目录。对于每个子目录,它将进入并搜索更多的文件和子目录,并继续进行,直至找不到更多的目录。我习惯于编写递归代码来替换或删除长字符串中的字符,但对于这一个我完全失去了。下面是我的代码(它的代码从Domino帮助文件的混合和一个我在IBM网站上发现):Lotusscript搜索窗口目录的子目录和文件。递归?
Sub Initialize
Dim pathname As String, filename As String
pathname = "C:\*.*"
filename = Dir(pathname, 16)
Print "Begin scan"
Do While filename<>""
If IsDir(pathname+filename)=True Then
Print pathname+filename+" is a directory"
'look for more directories and files in here
Else
Print filename+" is a file"
End If
filename=Dir()
Loop
Print "Finish scan"
End Sub
Function IsDir(Path As String) As Integer
Dim Void&
Dim Result As Boolean
On Error GoTo ErrorHandler
Void=FileLen(Path)
Result=False
GoTo Over
ErrorHandler:
Result=True
Resume Over
Over:
IsDir=Result
End Function
什么我需要改变,以使代码递归在评论部分? ('在这里寻找更多的目录和文件)。我不只是试图找到一个特定的文件或目录。我想要所有这一切。如果我能够做到这一点,那么我可以检索它们并保存到NotesDocument中。
只是为了补充一点。有一个已知问题,其中DIR $可以锁定文件夹(如果您计划以递归方式删除)。 SPR SODY85SM84。更多详情请点击http://www-10.lotus.com/ldd/nd85forum.nsf/5f27803bba85d8e285256bf10054620d/322e819311441a5a8525772e005d0078?OpenDocument – 2013-03-15 13:10:37