我正在创建一个安装程序,并且我有一个操作字符串的自定义操作:
<CustomAction Id="CheckDataPath2" Script="vbscript" Execute="immediate" Return="ignore">
<![CDATA[
Dim p
p=Session.Property("DATALOCATION")
Dim s
s=Right(1,p)
If (s="/") OR (s="\") Then
Session.Property("PROCEED")="1"
Else
Session.Property("PROCEED")="2"
End If
]]>
</CustomAction>
<InstallExecuteSequence>
<Custom Action="CheckOrigPath2" Before="InstallInitialize">CONTINUE</Custom>
</InstallExecuteSequence>
在日志文件中,我可以看到此自定义操作引发了错误。它说:
Microsoft VBScript runtime error 5: Type mismatch: '[string: "C:\"]'
“C:\”是 DATALOCATION 属性的值。我试过p = CStr(Session.Property("DATALOCATION"))
了,也不管用。
有人知道这里发生了什么吗?
任何建议将不胜感激。