0
我有一個VBScript,搜索在SQLite文件(明文)的字符串。它由我的NSIS安裝程序運行以確定安裝參數。的VBScript不是從NSIS安裝中工作,但是當我手動運行它的工作原理是
當我運行命令行所有作品刨,並認爲它是要找的文件中的字符串的腳本。但是,當我從NSIS安裝所有的突然內通過ExecWait運行它,它說,它無法找到字符串了。它沒有說它不能打開文件或任何其他錯誤,它只是返回該字符串不存在。
下面是從NSIS腳本EXEC:
ExecWait `"$SYSDIR\wscript.exe" "$PLUGINSDIR\myscript.vbs" "success" "failure" "done" "1"` $2
下面是引起了我這麼多的麻煩塊:
Function LookforValue(strFile)
iStatus = 0
Done = false
Const ForReading = 1
MsgBox(S_PATTERN)
MsgBox(F_PATTERN)
MsgBox(D_PATTERN)
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFile = 0
Set objFile = objFSO.OpenTextFile(strFile, ForReading)
Do Until objFile.AtEndOfStream
strSearchString = objFile.ReadLine
colMatchesS = InStr(strSearchString,S_PATTERN)
colMatchesF = InStr(strSearchString,F_PATTERN)
colMatchesD = InStr(strSearchString,D_PATTERN)
If colMatchesS > 0 Then
iStatus = 2
exit do
End If
If colMatchesF > 0 Then
iStatus = 3
exit do
End If
If colMatchesD > 0 Then
iStatus = 4
exit do
End If
Loop
objFile.Close
LookforValue = iStatus
端功能
僅供參考我使用的VBScript,而不是nsis命令,因爲nsis越來越模糊關於被另一個進程鎖定的文件。
如何創建在VBScript中strFile路徑? – Anders 2012-07-11 03:49:01
我已經確認strFile吐出了正確的文件路徑。我相信這個問題是與我試圖閱讀sqlite文件作爲一個文本文件,但我不知道。 – 2012-07-11 17:18:17
爲什麼它會從命令行工作呢? – Anders 2012-07-11 17:39:47