gpt4 book ai didi

C# Winforms 应用程序从命令提示符和调试器中打开,但不是从文件资源管理器中打开

转载 作者:太空宇宙 更新时间:2023-11-03 14:47:38 25 4
gpt4 key购买 nike

我将此 C# Winforms 应用编程为在文件资源管理器中单击文件时打开(通过“打开方式...”命令)。但是,应用程序没有打开,而是崩溃了,没有错误消息。从任务管理器中,可以看到该应用在消失前短暂运行。

在测试应用中,我发现文件资源管理器将文件路径作为第一个参数发送。从调试器或命令提示符启动应用程序是可行的(即使使用文件路径作为参数)。

代码如下:

public static void Main(string[] args) {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);

MainForm form = new MainForm();

if (args.Length > 0) {
if (System.IO.File.Exists(args[0])) {
form.OpenFile_(args[0]);
}
}

try {
Application.Run(form);
} catch (Exception e) {
form = new MainForm();
form.SetStatus("Something went wrong opening the file.");
Application.Run(form);
}
}

即使使用 try/catch block ,应用程序也无法从文件资源管理器启动。 它在命令提示符或调试器中没有任何问题。

最佳答案

其实很简单:

代替:

string SettingsFilePath = "settings.txt";

使用:

string SettingsFilePath = Application.StartupPath + "\\settings.txt";

关于C# Winforms 应用程序从命令提示符和调试器中打开,但不是从文件资源管理器中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53512131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com