Skip to content

Commit f57f54c

Browse files
committed
Update Metaminesweeper.iss
1 parent d651055 commit f57f54c

File tree

1 file changed

+38
-5
lines changed

1 file changed

+38
-5
lines changed

Metaminesweeper.iss

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
; 程序名称
77
#define MyAppName "Metasweeper"
88
; 程序版本
9-
#define MyAppVersion "3.2.0"
9+
#define MyAppVersion "3.2.1"
1010
; 发行商
1111
#define MyAppPublisher "eee555"
1212
; 官网
@@ -18,7 +18,7 @@
1818
; 根目录
1919
#define RootPath "Metaminesweeper-snapshot"
2020
; 图标
21-
#define IconPath "media\cat.ico"
21+
#define IconPath "metaminesweeper\media\cat.ico"
2222
[Setup]
2323
;注意:AppId 的值唯一标识此应用程序。不要在其他应用程序的安装程序中使用相同的 AppId 值。
2424
;(要生成新的 GUID,请单击 Tools |在 IDE 中生成 GUID
@@ -53,7 +53,7 @@ UninstallDisplayIcon={app}\{#IconPath}
5353
[Languages]
5454
Name: "english"; MessagesFile: "compiler:Default.isl"
5555
; 中文语言包,需要下载对应的中文.isl文件放到InnoSetup目录下的languages目录下
56-
Name: "chinese"; MessagesFile: "compiler:Languages\Chinese.isl"
56+
Name: "chinese"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
5757

5858
[Tasks]
5959
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkablealone
@@ -72,7 +72,7 @@ Filename: "{app}\{#AppPath}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#
7272
[Code]
7373
var
7474
Page: TWizardPage;
75-
AVFCheckbox, EVFCheckbox, RMVCheckbox, MVFCheckbox: TNewCheckbox;
75+
AVFCheckbox, EVFCheckbox, RMVCheckbox, MVFCheckbox, EVFSCheckbox: TNewCheckbox;
7676
procedure FileAssociationPage;
7777
begin
7878
Page := CreateCustomPage(wpSelectDir, '文件打开方式', '勾选对应的文件类型,以添加对应文件类型使用{#MyAppName}的打开方式,然后点击“下一步”按钮。');
@@ -108,13 +108,21 @@ begin
108108
MVFCheckbox.Caption := '.mvf';
109109
MVFCheckbox.Checked := False;
110110
MVFCheckbox.Parent := Page.Surface;
111+
112+
EVFSCheckbox := TNewCheckbox.Create(Page);
113+
EVFSCheckbox.Top := 80;
114+
EVFSCheckbox.Left := 0;
115+
EVFSCheckbox.Width := Page.SurfaceWidth;
116+
EVFSCheckbox.Caption := '.evfs';
117+
EVFSCheckbox.Checked := False;
118+
EVFSCheckbox.Parent := Page.Surface;
111119
end;
112120
113121
procedure CurStepChanged(CurStep: TSetupStep);
114122
begin
115123
if CurStep = ssPostInstall then
116124
begin
117-
if not (AVFCheckbox.Checked or EVFCheckbox.Checked or RMVCheckbox.Checked or MVFCheckbox.Checked) then
125+
if not (AVFCheckbox.Checked or EVFCheckbox.Checked or RMVCheckbox.Checked or MVFCheckbox.Checked or EVFSCheckbox.Checked) then
118126
begin
119127
RegDeleteKeyIncludingSubkeys(HKEY_LOCAL_MACHINE, 'SOFTWARE\Classes\Applications\{#MyAppExeName}');
120128
end;
@@ -190,6 +198,24 @@ begin
190198
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.mvf\DefaultIcon');
191199
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.mvf');
192200
end;
201+
202+
if EVFSCheckbox.Checked then
203+
begin
204+
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Classes\Applications\{#MyAppExeName}', '','{#MyAppName}');
205+
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Classes\Applications\{#MyAppExeName}', 'FriendlyAppName', '{#MyAppName}');
206+
RegWriteStringValue(HKEY_CLASSES_ROOT, '.evfs\OpenWithProgids', '', '{#MyAppName}.evfs');
207+
RegWriteStringValue(HKEY_CLASSES_ROOT, '.evfs', '','{#MyAppName}.evfs');
208+
RegWriteStringValue(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\DefaultIcon', '', ExpandConstant('{app}\media\EVF.ico,0'));
209+
RegWriteStringValue(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\shell\open\command', '', ExpandConstant('"' + ExpandConstant('{app}\{#AppPath}\{#MyAppExeName}') + '" "%1"'));
210+
end
211+
else
212+
begin
213+
RegDeleteValue(HKEY_CLASSES_ROOT, '.evfs\OpenWithProgids', '');
214+
RegDeleteValue(HKEY_CLASSES_ROOT, '.evfs', '');
215+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\shell\open\command');
216+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\DefaultIcon');
217+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs');
218+
end;
193219
end;
194220
end;
195221
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
@@ -221,6 +247,13 @@ begin
221247
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.mvf\shell\open\command');
222248
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.mvf\DefaultIcon');
223249
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.mvf');
250+
251+
RegDeleteValue(HKEY_CLASSES_ROOT, '.evfs\OpenWithProgids', '');
252+
RegDeleteValue(HKEY_CLASSES_ROOT, '.evfs', '');
253+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\shell\open\command');
254+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs\DefaultIcon');
255+
RegDeleteKeyIncludingSubkeys(HKEY_CLASSES_ROOT, '{#MyAppName}.evfs');
256+
224257
end;
225258
end;
226259
procedure InitializeWizard;

0 commit comments

Comments
 (0)