如何调整 XPS 文档的路径以使 wpf 应用程序在另一台 PC 上工作?
How to adjust path of XPS document for wpf Application to work on another PC?
我有一个简单的 wpf 应用程序,其中包含一个 window 和一个我用来显示 XPS 文档的文档查看器,我写了这个并且它有效。
XpsDocument myDoc = new XpsDocument(@"C:\Users\Ahmad
Elsayed\Desktop\testxpsdoc\xpsTest\xpsTest\Assets\Dokhna - Problems -
Report.xps", FileAccess.Read);
DV.Document = myDoc.GetFixedDocumentSequence();
但是问题是,当我发布应用程序并在另一台电脑上使用时,我得到了这个:
System.IO.DirectoryNotFoundException: Could not find a part of the
path
我试过这样使用相对路径:
XpsDocument myDoc = new XpsDocument(@"\Assets\Dokhna - Problems - Report.xps", FileAccess.Read);
但还是一样,因为我将内置操作设置为 Content,如果较新则复制到 xps 文件。
这也是解决方案资源管理器:
Solution Explorer
您应该获得 运行 应用程序的基本目录,您可以将其附加到 XPS 文件的相对路径。即使您部署应用程序,只要在可执行文件旁边的资产文件夹中有 XPS 文件,这也应该有效。
string xpsFilePath = Path.Combine(
AppDomain.CurrentDomain.BaseDirectory,
@"Assets\Dokhna - Problems - Report.xps");
XpsDocument myDoc = new XpsDocument(xpsFilePath, FileAccess.Read);
我有一个简单的 wpf 应用程序,其中包含一个 window 和一个我用来显示 XPS 文档的文档查看器,我写了这个并且它有效。
XpsDocument myDoc = new XpsDocument(@"C:\Users\Ahmad
Elsayed\Desktop\testxpsdoc\xpsTest\xpsTest\Assets\Dokhna - Problems -
Report.xps", FileAccess.Read);
DV.Document = myDoc.GetFixedDocumentSequence();
但是问题是,当我发布应用程序并在另一台电脑上使用时,我得到了这个:
System.IO.DirectoryNotFoundException: Could not find a part of the path
我试过这样使用相对路径:
XpsDocument myDoc = new XpsDocument(@"\Assets\Dokhna - Problems - Report.xps", FileAccess.Read);
但还是一样,因为我将内置操作设置为 Content,如果较新则复制到 xps 文件。
这也是解决方案资源管理器: Solution Explorer
您应该获得 运行 应用程序的基本目录,您可以将其附加到 XPS 文件的相对路径。即使您部署应用程序,只要在可执行文件旁边的资产文件夹中有 XPS 文件,这也应该有效。
string xpsFilePath = Path.Combine(
AppDomain.CurrentDomain.BaseDirectory,
@"Assets\Dokhna - Problems - Report.xps");
XpsDocument myDoc = new XpsDocument(xpsFilePath, FileAccess.Read);