从C#.ashx运行cscript.exe不会在vbscript文件中执行代码
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从C#.ashx运行cscript.exe不会在vbscript文件中执行代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1908字,纯文字阅读大概需要3分钟。
内容图文
编辑
我在.vbs文件中添加了一些错误处理,这确实是权限问题(我现在收到“权限被拒绝错误”).但是,在web.config< impersonate>中提供我的凭据标签似乎没有任何作用.
另外,当尝试通过通过流程向流程提供我的凭据时
p.StartInfo.Password = Misc.CreateSecurityString("password");
p.StartInfo.UserName = "admin";
我收到一个新错误:
cscript.exe – Application error
The application failed to initialize
properly (0xc0000142). Click on OK to
terminate the application.
如果您知道是什么原因,请大声喊出来. (或直接输入…)
感谢您一直以来的帮助!
背景
我正在尝试从自定义处理程序(.ashx)执行.vbs文件. VBScript正在iis 5.1中设置Web应用程序.
到目前为止,以下代码可以正确执行
string sToRun = "C:\CreateIISApplication.vbs"
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "cscript";
p.StartInfo.Arguments = sToRun;
p.Start();
// Do not wait for the child process to exit before
// reading to the end of its redirected stream.
// p.WaitForExit();
// Read the output stream first and then wait.
string sOutput = p.StandardOutput.ReadToEnd();
p.WaitForExit();
问题
我的问题是vbscript似乎根本没有运行.当我检查IIS时,未创建我的应用程序.
当我直接从命令提示符运行脚本文件时,一切正常,并且我的应用程序显示在IIS中.
故障排除
我决定在.vbs文件中添加一些echo语句,以确保它正在运行.在命令行上,所有语句均正确输出.当检查字符串sOutput时,我收到标头消息,但随后的消息都没有.
从C#-sOutput的内容
Microsoft (R) Windows Script Host
Version 5.7 Copyright (C) Microsoft
Corporation. All rights reserved
从命令行
Microsoft (R) Windows Script Host
Version 5.7 Copyright (C) Microsoft
Corporation. All rights reservedHello
因此,我可以证明(我认为).vbs文件未被评估,并且cscript被调用.如果我在不引用.vbs文件的情况下调用cscript,那么我将获得帮助文档.所以出了点问题.
有任何想法吗?谢谢!
解决方法:
我想象一个问题(也许不是整个问题)是IIS在其下运行的用户没有特权在目标计算机上运行脚本.
内容总结
以上是互联网集市为您收集整理的从C#.ashx运行cscript.exe不会在vbscript文件中执行代码全部内容,希望文章能够帮你解决从C#.ashx运行cscript.exe不会在vbscript文件中执行代码所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。