运行批处理文件或dos命令的C#web服务?
从我之前的问题来看 我检查了所有相关材料的许可,发现: 批处理文件:权限=对所有用户的完全控制 IIS用户=myUser ..win32\cmd.exe:系统权限,管理员,myUser=读取和执行,“TrustedInstaller”的读取权限(是什么?)=完全控制 Visual Studio正在管理员模式下运行 我在互联网上做了一些研究,似乎我需要在我的机器上对“本地政策”做些什么。不幸的是,我使用的是Windows Vista Home Premium,似乎无法设置本地策略。。。我还尝试将cmd.exe的权限更改为“完全控制”,但它不允许我这样做 似乎我正面临一个“无法解决”的问题,所以我会解释我在做什么,以便有人能告诉我该怎么做运行批处理文件或dos命令的C#web服务?,c#,web-services,batch-file,cmd,C#,Web Services,Batch File,Cmd,从我之前的问题来看 我检查了所有相关材料的许可,发现: 批处理文件:权限=对所有用户的完全控制 IIS用户=myUser ..win32\cmd.exe:系统权限,管理员,myUser=读取和执行,“TrustedInstaller”的读取权限(是什么?)=完全控制 Visual Studio正在管理员模式下运行 我在互联网上做了一些研究,似乎我需要在我的机器上对“本地政策”做些什么。不幸的是,我使用的是Windows Vista Home Premium,似乎无法设置本地策略。。。我还尝试将c
- 我已经开发了黑莓应用程序使用黑莓模拟器。它与我的web服务位于同一台PC上
- 我用C#开发了web服务,发布在我的本地主机上
- Blackberry应用程序将文件上载到web服务。Web服务将文件存储在我的电脑上。(我对这部分没有问题。)
- 我的电脑上有一个程序,我叫它myprogram.exe。该程序只在dos上运行。程序将使用命令myprogram.exe path\oldfile.x path\newfile.y newfile.y将文件从一种文件类型转换为另一种文件类型。该命令将自动创建并存储在我的电脑上
- 我需要转换文件,这是从BB发送的,现在存储在我的本地PC上,所以我写了一个批处理文件包含dos命令。Web服务应该执行批处理文件,但不会
希望,这会有所帮助。您为什么创建批处理文件而不是直接调用myprogram.exe。当您将另一个用户分配给您的服务而不是本地服务时会发生什么情况?该用户有足够的权限进行您需要的操作?我真的不知道如何调用myprogram.exe并直接向其输入命令。你能给我举个例子吗?我试过System.Diagnostics.Process.Start(@“C:\Program Files\TotalAudioConverter\AudioConverter.exe”);但什么也没发生。你的AudioConverter.exe可能需要一些参数?So System.Diagnostics.Process.Start(@“C:\Program Files\TotalAudioConverter\AudioConverter.exe”,@“C:\MyFolder\MyInflie C:\MyFolder\MyOutFile”);(或任何需要的参数)这意味着我可以将所有参数放在C:\Program Files\TotalAudioConverter\AudioConverter.exe之后,对吗?完整参数是C:\MyFolder\myinfle C:\MyFolder\MyOutFile C-mp3,因此它看起来像System.Diagnostics.Process.Start(@“C:\Program Files\TotalAudioConverter\AudioConverter.exe”,@“C:\MyFolder\myinfle C:\MyFolder\MyOutFile-cmp3”);正确的?真的非常感谢你的帮助,埃列文!!!我会尽快尝试,并告诉你结果:)谢谢汉斯约格!我会尽力告诉你结果!:)现在,我有了使用DefaultApplicationPool(网络服务)的wwwroot和使用NewAppPool(本地系统)的MyApp。我仍然无法运行批处理文件。我尝试输入web.config,但什么也没发生。请告诉我我犯了什么错误。我在任务管理器中看到了所有进程,并且有一个用户名为system的.exe程序进程。但我仍然不明白为什么它从未被执行过(我想你的程序从未执行过,因为Windows Vista的用户帐户控制(UAC)。UAC将应用程序限制为标准用户权限。哦,不……我正计划换一台机器(Windows 7)。希望我不会面临这种情况。)