簡體   English   中英

C#沒有參數傳遞給Main

[英]C# No Arguments Being Passed to Main

我一直在嘗試將參數傳遞給C#中的main方法。 主要是我只想捕獲雙擊的文件路徑。 我的文件帶有自定義擴展名,當它運行時打開我的程序。 那部分起作用。

    static string file = "";

    [STAThread]
    static void Main(string[] args)
    {
        Application.EnableVisualStyles();

        if (args.Length > 0) file = args[0];

        Application.Run(new Form1());
    }

    public Form1()
    {
        InitializeControls();
    }

我也嘗試過這種方式,沒有太大區別。

    static string file = "";

    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();

        string[] args = Environment.GetCommandLineArgs();
        if (args.Length > 0) file = args[0];

        Application.Run(new Form1());
    }

    public Form1()
    {
        InitializeControls();
    }

值得一提的是,我在部分課程中有這個。 我不知道這是否直接影響到它。

如果我只要雙擊就可以得到文件,那么我並不需要獲取args,但是我覺得那是唯一的方法,現在我很好奇。

我缺少什么使我無法將args傳遞給我的主設備?

如果在命令提示符下運行“ ftype”,則程序類型應顯示為:

YOURTYPE="yourProgram.exe" "%1"

如果"%1"並非以這種方式出現,則關聯是錯誤的(它不會將文件名作為參數傳遞)。 試試看。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM