第一:如果我的英語不太好,我是荷蘭人。visual c#打開自己的文件擴展
我做了我自己的文件類型(.ddd),並且我做了一個簡單的程序來打開這個文件類型,但是我點擊.ddd文件(在我的桌面上)我的程序只打開文件不是自動的在我的程序裏面打開。
如何在我的程序打開時直接打開文件?
第一:如果我的英語不太好,我是荷蘭人。visual c#打開自己的文件擴展
我做了我自己的文件類型(.ddd),並且我做了一個簡單的程序來打開這個文件類型,但是我點擊.ddd文件(在我的桌面上)我的程序只打開文件不是自動的在我的程序裏面打開。
如何在我的程序打開時直接打開文件?
我slitly改變了查爾斯·M的發佈 並能正常工作:
string[] args = Environment.GetCommandLineArgs();
string fileToOpen = "";
if (args.Count() == 2)
{
fileToOpen = args[1];
}
感謝您的建議, Ecross
args.Count()需要使用System.Linq;我推薦使用args.Length。 – 2010-04-07 16:03:18
windows shell將文件名作爲命令行參數傳遞給您的程序。你的程序需要讀取它的命令行參數並打開那裏指定的文件。
僅當他使用拖放操作或者他的程序已註冊才能處理該文件類型時。我想他想在安裝時知道如何做後者。 – 2010-04-05 20:38:03
但問題是,當他雙擊文件時,他的程序運行。這不意味着文件類型關聯已經完成了,剩下的就是從命令行抓取文件名嗎? – 2010-04-05 20:49:55
carson Myers是正確的 – ecross 2010-04-07 15:05:10
您是否在您的Main()中包含代碼以讀取命令行參數?例如
static void Main(string[] args)
{
string fileToOpen = "";
if (args.Length == 1)
fileToOpen = args[0];
...
}
如果你這樣做了,那麼我想你沒有正確註冊的程序打開這種文件類型。右鍵單擊任何.ddd文件,選擇「屬性」,並在其中顯示「打開方式:」確保顯示您的程序。如果不是,請單擊更改並瀏覽至您的程序。
只有當他的程序被註冊來處理該文件類型。我想他想知道如何在安裝的時候這樣做 – 2010-04-05 20:38:42
我在args.Count == 1下得到一個紅色虛線,下一個錯誤: 運算符'=='不能應用於'method group'類型的操作數和'int' – ecross 2010-04-07 15:04:49
@ecross:對不起,應該是args.Length。 – 2010-04-07 15:58:07
@Kevin:這可能是因爲他的節目缺乏正確的代碼。 – 2010-04-05 20:11:50
@Kevin這是編程相關的,他需要知道如何將它集成到他的安裝程序中。 – 2010-04-05 20:36:57