现在在asp.net下想调用一个外部EXE 程序该 程序也是用.net 完成,一个window服务类型的应用程序,应用程序在VS中指定的debug中使用参数可以执行,但是现在想在asp.net中启动这个应用程序如何来使用呢?我想到了用shell这个函数(vb.Net) 可是查了MSDN 上说要注意 文件名和文件规范要全部引起 我理解的是 应该是这样的 shell ("*****/****/***.exe a b c d ",****) ,可后来又说中间不要有空格。不明白怎么调用了。
这个应用程序执行的是这样的 ****/***.exe 0 2 1 44556677
大概是这个样子,我现在是这样写的 shell(chr(34) & "****/***.exe" & " " & "0" & " " & "2" ... & (chr34),*****) 现在的问题是用双引号引起了应用程序的路径。参数也传入,可是还是执行不了。后来不知道怎么了在本地VS中调试能运行程序,直接运行页面也能运行程序。用Release发布网站后在本地执行可以。能正常运行。可是我把这个发布网站的包放到一台VS2003 的机器上就运行不了。我也把这个应用程序及应用程序所要调用的文件(都在本级目录)的文件也加上了最高的权限。还是不行。最后把应用所在的程序目录也提升了权限。可是还是运行不了。不知道为什么?我怀疑两个原因
一,一个是我之前都是用Debug模式发布网站,是不是这回我用Release模式发布网站的缘故。
二,再者是不是我的应用程序中与这个应用程序相关联的文件的版本的问题?是不是要拿这个应用程序到每台要建立网站的机器上去编译一下?
谢谢大家。
可以通过配置web.config或者machine.config来模拟管理员用户,然后就有足够的权限运行应用程序了。