c# 打开不是本地的PDF文件
我想在一个winform界面上添加一个帮助按钮,点击后可以打开一个PDF文件。我现在基本实现这个功能,System.Diagnostics.Process.Start(@...
我想在一个winform界面上添加一个帮助按钮,点击后可以打开一个PDF文件。我现在基本实现这个功能,
System.Diagnostics.Process.Start(@"C:\Users\MadFrog\Desktop\操作手册.pdf");
但是我觉得如果是别人在自己的电脑上使用的话会找不到指定文件,导致打不开,我想实现一个能够打开不是本地PDF文件的功能,请教各位大神。。。 展开
System.Diagnostics.Process.Start(@"C:\Users\MadFrog\Desktop\操作手册.pdf");
但是我觉得如果是别人在自己的电脑上使用的话会找不到指定文件,导致打不开,我想实现一个能够打开不是本地PDF文件的功能,请教各位大神。。。 展开
若以下回答无法解决问题,邀请你更新回答
1个回答
展开全部
两种常用方法
1、存储到网络位置或者数据库, 如果你的项目有服务端,则将文件放在服务端发布共享,调用的时候值需要Start(@"Ftp:\192.168. x.x\Shared\操作手册.pdf"); 即可
如果使用数据库,可以将PDF存成byte放在数据库中,
存入 var stream = File.Open("路径"); 然后将stream存到指定表里即可。
读的时候先查询出文件流,然后保存到本地,再打开,
不过不推荐存数据库,这种方式性能损耗非常大,而且效率很低。
2、整合到项目中去, 这种不依赖服务器,
将“操作手册”拖入到你项目中, 然后右键属性, 选择保存内容,并且复制本地,
这样你每次生成Debug版本或者Release版本 ,生成的文件夹下是会有这个PDF的,
然后打开的时候,
Start(AppDomain.CurrentDomain.BaseDirectory + "/操作手册.pdf");
上面的BaseDirectory是你程序的根目录,
一般都会用这种方式来存储帮助文档或者其他的资源。
1、存储到网络位置或者数据库, 如果你的项目有服务端,则将文件放在服务端发布共享,调用的时候值需要Start(@"Ftp:\192.168. x.x\Shared\操作手册.pdf"); 即可
如果使用数据库,可以将PDF存成byte放在数据库中,
存入 var stream = File.Open("路径"); 然后将stream存到指定表里即可。
读的时候先查询出文件流,然后保存到本地,再打开,
不过不推荐存数据库,这种方式性能损耗非常大,而且效率很低。
2、整合到项目中去, 这种不依赖服务器,
将“操作手册”拖入到你项目中, 然后右键属性, 选择保存内容,并且复制本地,
这样你每次生成Debug版本或者Release版本 ,生成的文件夹下是会有这个PDF的,
然后打开的时候,
Start(AppDomain.CurrentDomain.BaseDirectory + "/操作手册.pdf");
上面的BaseDirectory是你程序的根目录,
一般都会用这种方式来存储帮助文档或者其他的资源。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询