0
從VBA調用CopyFileW,如下所示,使用不存在的目標文件夾給出由CopyFileW返回的值0,但GetLastError也返回0,表示操作成功。如何從失敗的CopyW操作中獲取錯誤代碼?CopyFileW返回0,但GetLastError也返回0
Dim Ret As Long
sFrom = "\\?\UNC" & Mid(sFrom, 2)
Ret = CopyFileW(StrPtr(sFrom), StrPtr(sTo), False)
If Ret = 0 Then
Call LogErrorFilFol(GetFileFromPath(sFrom), GetFolderFromPath(sFrom), _
"WCopyFile error - " & ErrorMsg(GetLastError), FileID)
End If
CopyFile返回後必須立即調用GetLastError。你不僅可以調用其他函數,VB運行時也可能調用其他函數作爲互操作層的一部分。 – 2012-03-26 01:27:08