2015-12-22 93 views
0
Function foldercheck(Inputfoldername) 
    If objFSO.FolderExists(Inputfoldername) = False Then 
     WriteLogFileLine logfile, "Folder " & Chr(34) & Inputfoldername & _ 
      Chr(34) & " does not exists, so exiting the script !" & vbCrLf 
     SQuit=1 
    Else 
     WriteLogFileLine logfile, "Folder " & Chr(34) & Inputfoldername & _ 
      Chr(34) & " exists" & vbCrLf 
    End If 
    foldercheck = SQuit 
End Function 

Function quitscript() 
    If SQuit = 1 Then WScript.Quit 
End Function 

Function FolderExitsornot(Inputfoldername) 
    Call foldercheck(Inputfoldername) 
    Call quitscript 
End Function 

我已更新我的腳本,現在的問題是,每次目標文件夾不存在時,我的腳本退出,而我的要求是它應該顯示所有目標文件夾不存在的日誌消息,然後退出腳本。這就是爲什麼我寫了2個函數然後在一個主函數內調用它們的原因。我可以調用函數內的函數嗎?

+0

您發佈的代碼只有一個目標文件夾('Inputfoldername'),因此它基本上已經顯示「所有」目標文件夾的日誌消息。 –

+0

@AnsgarWiechers - '(Inputfoldername)'是從一個文本文件傳入的,該文件可能有許多條目,基本上是整個文件路徑。 – Pals

+2

無論何時文件夾丟失,您都將'SQuit'(顯然是一個全局變量)設置爲1。在接下來的步驟中,調用一個函數,一旦'SQuit'取值1,就立即退出腳本。你期望會發生什麼?當然如果你告訴它腳本會在第一個丟失的文件夾中退出。 –

回答

2

我想到你居然問了兩件事情:

  1. 是否有可能從一個函數中調用一個函數?
  2. 是否可以在函數中定義一個函數?

第一個問題的答案是肯定的。第二個答案是否定的 - 您必須將函數聲明移出FolderExitsornot-函數。

+0

請參閱上面的修改腳本。但我還無法達到預期的效果。 – Pals

相關問題