我的想法是在网站启动时检测某些文件,如果不符合预期,将信息写入一个VBS文件,然后直接执行,只到通过该预期值后,才执行后续,但是现在碰到vbs文件可以生成,但是无法执行。
我本地测试可以,使用winfrom窗体也可以,而且生成的文件双击是正确可以执行的。
代码如下:
MapPath:封装的一个用于获取网站根目录的方法。
VerificationResult.error :错误提示信息
var path = MapPath("CloudErrorTips.vbs");
string strTest = "msgbox "" + VerificationResult.error + "",64,"运行配置项错误"";
System.IO.File.WriteAllText(path, strTest, Encoding.Unicode);
Process p = System.Diagnostics.Process.Start(@"C:\WINDOWS\System32\WScript.exe", path);
p.WaitForExit();
文件有生成但是无法执行,也采用过cmd带起这个命令但是还是无效。
也不算执行失败,有执行,进程可以看到。但是没有提示~~~~~~这个VBS执行的进程在任务管理器可以看到。但是没有双击之后的那种提示
看了你给一楼的回复,才知道啥问题。
你不用费劲了,这是 Mission Impossible。
是的,本地测试可以,WinForm也可以,但是IIS就是不行,别问为啥,这是龟腚。
你报的什么错,我尝试了一下,是正常的
没有报错,本地测试是可以。
但是服务器上面没有弹窗提示,但是任务管理器可以看到进程。
我想要和本地测试一样有弹窗的提示。
图一是我想要的效果,也是我本地测试的效果。
图二是服务器效果,任务管理器有,但是没有弹窗。
通常由权限造成,你试试给networkservice 角色添加权限试试,如果还不行记得还需加个webconfig配置。