注册 登录
编程论坛 ASP.NET技术论坛

[求助]是高手的进来

xbdeig 发布于 2007-03-28 19:47, 506 次点击
try
{
Process p = new Process() ;
p.StartInfo = new ProcessStartInfo("C:\\Program Files\\WinRAR\\WinRAR.exe","a c:\a.rar c:\a.txt");
p.Start();

}
catch(Exception ee)
{
Response.Write(ee.Message) ;
}
上面的程序在vs.net2005可以,vs.net2003为什么不成功啊,也不提示错误。

[此贴子已经被作者于2007-3-29 9:06:12编辑过]

5 回复
#2
sean882007-03-29 16:06
try
{
Process p = new Process() ;
p.StartInfo = new ProcessStartInfo("C:\\Program Files\\WinRAR\\WinRAR.exe","a c:\a.rar c:\a.txt");
p.Start();

}
catch(Exception ee)
{
Response.Write(ee.Message) ;
}
上面的程序在vs.net2005可以,vs.net2003为什么不成功啊,也不提示错误。
不是vs.net2003不行,是你代码路径解析有误.
p.StartInfo = new ProcessStartInfo("C:\\Program Files\\WinRAR\\WinRAR.exe","a c:\a.rar c:\a.txt");
//少了一个这个东东或者加多一个\来解析~~~~~~

[此贴子已经被作者于2007-3-29 16:21:07编辑过]

#3
冰镇柠檬汁儿2007-03-29 16:17
以下是引用xbdeig在2007-3-28 19:47:43的发言:
上面的程序在vs.net2005可以,vs.net2003为什么不成功啊,也不提示错误。
这是很正常的事情,毕竟版本不一样了
#4
bygg2007-03-29 17:46

\ 这个是表示转义字符..

#5
xbdeig2007-03-29 21:10

行了,谢谢二楼的,在2005里不必加@的

加@干什么用啊

[此贴子已经被作者于2007-3-29 21:12:41编辑过]

#6
sean882007-03-30 09:20
以下是引用xbdeig在2007-3-29 21:10:35的发言:

行了,谢谢二楼的,在2005里不必加@的

加@干什么用啊

@是转义字符串路径.不只是2005里面不用加,2003也不用.不过前提是你要像你第一个参数那样写.多加一个\

p.StartInfo = new ProcessStartInfo("C:\\Program Files\\WinRAR\\WinRAR.exe","a c:\\a.rar c:\\a.txt");

1