【发布时间】:2021-07-06 13:07:33
【问题描述】:
当尝试通过窗口开始菜单搜索其名称来打开在 .Net Core 3.1 中开发的 WPF 应用程序时,应用程序打开,它显示主窗口,但在几秒钟。但是,如果我以管理员身份打开它(在搜索其名称后右键单击开始菜单中的图标),应用程序会打开而不关闭,但它不会显示它应该显示的信息,只显示内置数据。
此应用程序数据/信息是从位于可执行位置子文件夹中的 XML 文件中读取的。在代码中,我通过相对路径访问这些文件:
internal const string PERSISTENT_FOLDER = @".\data\";
internal const string PERSISTENT_DATA_FILE = "data.xml";
internal const string PERSISTENT_DATA_FILE_PATH = PERSISTENT_FOLDER + PERSISTENT_DATA_FILE;
我也使用 serilog 来记录消息,但在上述两种情况下,日志文件中都没有写入任何内容。我将日志文件路径引用为相对路径:
private static string LogFile { get; set; } = @".\Logs\Log.log";
当我直接使用可执行文件或通过在桌面上创建的快捷方式打开应用程序时,应用程序运行良好。读取和写入数据以及在文件中注册日志。
如Microsoft documentation 中所述,应用程序作为“独立”发布
我不知道是什么真正导致了这种行为。
【问题讨论】:
-
您似乎假设当前目录设置为特定目录。通常情况并非如此。
标签: c# .net wpf windows .net-core