c# 怎么 启动指定 目录下的 EXE 程序(这个程序是JAVA 的控制台程序)
我先是调用WINAPI实现的[DllImport("kernel32.dll")]publicstaticexternintWinExec(stringexeName,i...
我先是调用WIN API
实现的
[DllImport("kernel32.dll")]
public static extern int WinExec(string exeName, int operType);
private void open_Click(object sender, EventArgs e)
{
WinExec("dbc/hotss.exe", 1);
}
但出现一个问题 只能将这个EXE程序 放到C# 程序集 跟目录下 如:
WinExec("hotss.exe", 1); 这样才能正常启动
如果变成 其它目录 如: WinExec("其它目录/hotss.exe", 1); 程序只能 一闪 就没了 启动不了 ,再说明下 我这个hotss.exe 是JAVA 的一个控制程序.不知道跟这个有没有关系.
求高手解答!谢谢! 展开
实现的
[DllImport("kernel32.dll")]
public static extern int WinExec(string exeName, int operType);
private void open_Click(object sender, EventArgs e)
{
WinExec("dbc/hotss.exe", 1);
}
但出现一个问题 只能将这个EXE程序 放到C# 程序集 跟目录下 如:
WinExec("hotss.exe", 1); 这样才能正常启动
如果变成 其它目录 如: WinExec("其它目录/hotss.exe", 1); 程序只能 一闪 就没了 启动不了 ,再说明下 我这个hotss.exe 是JAVA 的一个控制程序.不知道跟这个有没有关系.
求高手解答!谢谢! 展开
展开全部
C#之启动指定目录下的程序,我会JAVA,给你C#的
Process debug = new Process(); //创建新的进程
//设置进程信息
debug.StartInfo.FileName = <string>filePath;//程序路径
debug.StartInfo.Arguments = <string>arg;//程序参数
debug.StartInfo.UseShellExecute = false;//
debug.StartInfo.CreateNoWindow = true;//是否创建新窗口true为不创建
debug.Start();//启动进程
debug.Close();//关闭进程
Process debug = new Process(); //创建新的进程
//设置进程信息
debug.StartInfo.FileName = <string>filePath;//程序路径
debug.StartInfo.Arguments = <string>arg;//程序参数
debug.StartInfo.UseShellExecute = false;//
debug.StartInfo.CreateNoWindow = true;//是否创建新窗口true为不创建
debug.Start();//启动进程
debug.Close();//关闭进程
展开全部
WinExec是有返回值的,你看一下返回值报的什么错误。猜想可能是你的路径没写对,导致系统找不到程序。如果路径里有"\"记得要写成"\\"。
还有一种可能是你把程序放到其他目录下的时候没有把所有文件都copy过去,导致程序缺少模块不能启动。
还有一种可能是你把程序放到其他目录下的时候没有把所有文件都copy过去,导致程序缺少模块不能启动。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
format c:,是这样输入的吗。哈哈。
你可以重两个方面看一下。一是:用scandisk看看有没有坏扇区。在格式化一下看看。每二你看看你是否光驱和硬盘挂在一根数据线上要是的话建议不要在一起。
你可以重两个方面看一下。一是:用scandisk看看有没有坏扇区。在格式化一下看看。每二你看看你是否光驱和硬盘挂在一根数据线上要是的话建议不要在一起。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不用调用WIN API,我是用Process类实现的,代码比较简单
ProcessStartInfo psi = new ProcessStartInfo(dateFilePath);
Process.Start(psi);
dateFilePath是exe的路径
关于你的第二个问题,我不是很清楚
希望能帮到你
ProcessStartInfo psi = new ProcessStartInfo(dateFilePath);
Process.Start(psi);
dateFilePath是exe的路径
关于你的第二个问题,我不是很清楚
希望能帮到你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该使用物理路径,而不是相对路径
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询