2011-12-06 16 views
2

可能重複:
How to associate a file extension to the current executable in C#打開一個文件,一個.net應用程序會識別它?

我不知道究竟如何調用這個問題。

我正在尋找一個解決方案,例如:當爲該應用程序定義的文件類型打開時,我的.net應用程序將自動打開。

例如:該應用程序的文件類型有一個擴展的xyz:hellothere.xyz

無論何時,用戶打開文件的擴展名「XYZ」那麼.NET應用程序將被打開。我怎樣才能做到這一點?

在此先感謝。

回答

2

文件關聯可以在Windows文件夾選項中手動創建。 This article介紹瞭如何使用註冊表文件做編程,例如:

  • 創建於HKEY_CLASSES_ROOT您的文件擴展名命名.xyz字符串鍵。

  • 將其值設置爲您的文件類型的名稱,例如XyzDocument

  • 創建字符串鍵HKEY_CLASSES_ROOT\XyzDocument\open\shell\command

  • 將其值設置爲"path\to\your\program" "%1"或類似的,根據您的需要。

你也可以做它從一個批處理腳本ftypeassoc

ftype XyzDocument="path\to\your\program" "%1" 
assoc .xyz=XyzDocument 
0

這不是一個編碼問題,而是一個操作系統配置問題。

對於Windows,您需要設置與您的程序的文件擴展名關聯。

請參閱Microsoft的this How to

0

如果我沒有弄錯,你想註冊一個文件類型與你的應用程序。您可以通過右鍵單擊該類型的文件,選擇Open with,然後選擇您的應用程序。

編輯 根據您的意見,devn,我看到你想在安裝時做到這一點。既然如此,你可以使用WiX來完成這個工作,比如here

+0

但我想自動執行。讓我們假設一個mp3文件,當我點擊它時,winamp將被打開。我不知道我是否可以在.NET安裝過程中執行此操作? – olidev

1

您要尋找的術語是「文件關聯」。爲您的應用程序創建文件關聯的最佳位置在您的安裝程序中。確切的過程取決於您使用的安裝程序技術。

0

您需要在安裝過程中創建文件關聯。有關創建該關聯的演練,請參閱此MSDN article的「創建文件關聯」部分,瞭解如何在安裝期間創建該關聯。

注意:其他人已經發布了關於如何手動執行此操作的文章,但我認爲您提到的使用意味着您想在安裝期間執行此操作。

相關問題