c#:与文件扩展名关联的图标

时间:2011-11-17 10:41:04

标签: c# file

在我的应用程序中,我创建扩展名为.mprj的文件。

如何为此类文件指定图标?

是否存在适当的.Net方法?

2 个答案:

答案 0 :(得分:3)

您需要修改注册表项。 可以在此处找到如何处理c#的代码片段: http://mel-green.com/2009/04/c-set-file-type-association/

答案 1 :(得分:1)

我建议你使用InnoSetup来做到这一点。您可以将程序与扩展程序关联以添加图标,并在用户单击具有此扩展名的文件时启动程序。 (例如,直接在程序中打开文件,如msoffice程序)。当我们单击Excel文件时,Excel正在启动并打开此文件。您可以使用InnoSetup轻松完成同样的操作,并使用main方法中的少量代码来解析参数。

使用Innosetup,您只需在[设置]

部分添加i
ChangesAssociations=yes

在[注册表]

部分
Root: HKCR; Subkey: ".mpl"; ValueType: string; ValueName: ""; ValueData: "{#MyAppName}"; Flags: uninsdeletevalue
Root: HKCR; Subkey: "{#MyAppName}"; ValueType: string; ValueName: ""; ValueData: "Program {#MyAppName}"; Flags: uninsdeletekey
Root: HKCR; Subkey: "{#AppName}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#MyAppExeName},0"
Root: HKCR; Subkey: "{#AppName}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#MyAppExeName}.EXE"" ""%1"""

previous message

中的更多信息