gpt4 book ai didi

c# - 文件名未传递给 main

转载 作者:太空宇宙 更新时间:2023-11-03 22:26:03 24 4
gpt4 key购买 nike

我有一个应用程序,并且有一个与之关联的文件类型。当我双击该文件时,它会打开我的应用程序,但文件名/路径永远不会传递到我的应用程序。但是,如果我将文件拖到图标上,它确实有效。这是 main():

    static void Main(string[] filenames)
{
Form1 form = null;

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
form = new Form1();
if (filenames != null && filenames.Length > 0)
form.FileName = filenames[0];
Application.Run(form);
}

filenames.length 每次都为 0(除非我将文件拖/放到应用程序上)

最佳答案

您的文件关联是否包含 %1 或“%L”作为命令行的一部分?这是将文件名传递给您的应用程序所必需的。 (“%L”表示完整的长文件名,%1 是缩短的 8.3 文件名。)

当您将文件放在应用程序图标上时,您的应用程序确实收到文件名的原因是 Windows 在这里不使用文件关联。事实上,它适用于任何程序,无论是否有文件关联。在这些情况下,它会猜测您可能希望以文件名作为参数来启动应用程序。

关于c# - 文件名未传递给 main,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1380533/

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