public void OpenPath() //查看附件
{
string Path = Session["FilePath"].ToString();//路径为:~/upload/2011-6-9/01003720110609T143951.jpg
Path = Server.MapPath(Path);
if (Path.Length > 1)
{
try
{
System.Diagnostics.Process.Start(Path);
}
catch (Exception ee)
{
Page.RegisterStartupScript("script", "<script language='javascript'>alert('附件不存在,已经被删除或被移动过位置');</script>");
}
}
else
{
Page.RegisterStartupScript("script", "<script language='javascript'>alert('没有附件不能打开');</script>");
}
}
//
//发布到服务器上是这样的:当我点击附件连接,调用上面的函数,路径已经存在,没有问题,也不弹出窗体,也不打开图片,系统中图片查看器是有的。
//本地vs2005中运行:没有问题,可以直接打开,为什么呢?
//难道是权限问题??? 哪里可以改??
//如果打开附件的方式不对,请告诉好的方式。谢谢各位的回复,均有分,但是请看清现在的问题。
这个原因,直接链接如何?
System.Diagnostics.Process.Start(Path);
这种方式是在服务器端打开的,不知道和客户端有什么关系
HyperLink其实是绑定的一个文件路径,比如:一个图片,xls,doc等等,路径。
像这样的:~/upload/2011-6-9/01003720110609T143951.jpg我想要实现,点击HyperLink就直接打开上面的jpg,明白?
response.redirect(path);这样可以?
可以,不过没必要HyperLink.NavigateUrl = path 就成了。
我想实现用系统自带的编辑器单独打开这个文件。 网页还在,旁边弹出打开的窗体。
这种方式不合适我这里使用。首先,我点击标题淡出DIV层,覆盖后面的网页,弹出的div层中,js动态添加的链接,当我点击链接时调用函数,所以此时函数中已经不纯在 HyperLink。
Start:启动进程包含信息资源
本地可以的,网页上就没有效果,是不是不能开启本地进程,访问服务器上网址中的文件呢,