[英]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.