簡體   English   中英

將程序的特定功能添加到Windows上下文菜單

[英]Add a specific function of a program to Windows Context Menu

我編寫了一個簡單的C#WPF應用程序,該應用程序以我公司所需的特殊方式幫助重命名文件批次(采用多種可選模式-添加前綴,刪除前綴,替換某些字符等)。

一切都很好,但是我並非總是要真正啟動應用程序,導航到文件夾等,所以我想添加程序的一個特定功能(刪除前綴)作為Windows上下文菜單的快捷方式。

基本上,我想實現的功能是能夠在資源管理器中選擇多個文件,右鍵單擊它們,選擇“刪除前綴”並將其重命名-我不希望應用程序窗口出現(如果不需要)(盡管我可以忍受它的活動(最小化到托盤)。

我或多或少都知道將上下文菜單項添加到注冊表(帶有命令行參數),但是我不確定它是否對我有用,因為我只需要特定的功能,而不是整個應用程序即可。

有什么想法我應該怎么做?

在運行該功能的程序中添加命令行選項。

在App.xaml.cs中重寫OnStartup並使用StartupEventArgs.Args獲取命令行參數。

或者,如果您的函數不需要運行ui,則可以替換Main,添加Program.cs並添加

class Program
{
    [STAThread]
    public static void Main(string[] args)
    {
        if (runNormally(args))
        {
            MainWindow mainWindow = new MainWindow();
            var app = new Application();
            app.Run(mainWindow);
        }
        else
        {
            MyFunction(args);
        }
    }
}

注冊上下文菜單,以便它傳遞命令行參數以運行正確的功能。

暫無
暫無

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

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