论坛风格切换切换到宽版
  • 8713阅读
  • 14回复

【已解决】取消 InnoSetup 安装程序关于菜单的问题 [复制链接]

上一主题 下一主题
离线zhfi
 

发帖
461
金钱
190
威望
19
只看楼主 倒序阅读 0 发表于: 2008-02-05
原来的问题:

//取消安装程序关于菜单
WizardForm.BORDERICONS := [biSystemMenu];

InnoSetup 安装程序标题菜单中的 “关于安装程序”已经屏蔽,但是产生以下问题:
1、授权说明中的“网址链接”全部失去链接效果(无下划线)。
2、安装类型默认为空,而不是原来排在最上面/已经安装的安装类型。


希望哪位高人指点一下,不胜感激。



以下是完善的脚本:

; -- test.iss --
; 脚本编写:zhfi
; 特别感谢:风铃夜思雨


[Setup]
AppName=我的程序
AppVerName=我的程序 版本 1.5
DefaultDirName={src}
Compression=lzma
Uninstallable=no
LicenseFile=test.txt

[Types]
Name: recommend; Description: 推荐
Name: custom; Description: 自定义; Flags: iscustom

[Components]
Name: main; Description: 测试; Types: recommend;

[code]
const MF_BYPOSITION=$400;

function DeleteMenu(HMENU: HWND; uPosition: UINT; uFlags: UINT): BOOL;
external 'DeleteMenu@user32.dll stdcall';

function GetSystemMenu(HWND: hWnd; bRevert: BOOL): HWND;
external 'GetSystemMenu@user32.dll stdcall';

procedure InitializeWizard();
begin
DeleteMenu(GetSystemMenu(wizardform.handle,false),8,MF_BYPOSITION);
DeleteMenu(GetSystemMenu(wizardform.handle,false),7,MF_BYPOSITION);
end;


[attachmentid=24558]
附件: DeleteMenu.7z (1 K) 下载次数:51
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线TiGer-X

发帖
134
金钱
0
威望
0
只看该作者 1 发表于: 2008-02-06
之前貌似我已经在莫 MM 的帖子说过这问题的解决方法了。。。
离线zhfi

发帖
461
金钱
190
威望
19
只看该作者 2 发表于: 2008-02-06
感谢楼上兄弟。
如果是这个链接的话:
http://bbs.hanzify.org/read.php?tid=51227

//屏蔽安装程序关于菜单
WizardForm.TypesCombo.ItemIndex := 0
WizardForm.BORDERICONS := [biSystemMenu, biMinimize, biHelp];

问题依旧。IS版本:5.22 风铃夜思雨 汉化版。
莫MM的新版KMP中:
1、授权许可中无网址链接;
2、禁用了安装类型选择框。
所以不知道是否存在该问题。

麻烦您直接给出旧帖链接地址,或者关键字。
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线zhfi

发帖
461
金钱
190
威望
19
只看该作者 3 发表于: 2008-02-07
另外,还有一问题。
如何将需要调用的插件整合到程序中?那样卸载程序也同样可以调用。
如果直接将文件释放到安装目录中,怕有人说三道四。
比如NSIS中:
ReserveFile "resource\system.dll"
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线zhfi

发帖
461
金钱
190
威望
19
只看该作者 4 发表于: 2008-02-16
老虎版主进来帮我看看吧~~
谢谢!
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线gnatix

发帖
7696
金钱
-8279
威望
-828
只看该作者 5 发表于: 2008-02-16
QUOTE(zhfi @ 2008年 02月 16日 15时 11分) [snapback]344698[/snapback]

老虎版主进来帮我看看吧~~
谢谢!

关于链接失效的问题(其实就是文本框不再显示富文本的问题)可以通过把授权文件打包并重新读入到文本框来解决。如图所示:既没有那个你不想要的菜单项,同时又可以点击链接。
[attachmentid=24286]

把插件整合到安装程序,用INNO是很容易的,比如
[Files]
Source: "resource\system.dll"; DestDir: "{sys}"; Flags: regserver
不过也许我没有理解你的问题。
离线zhfi

发帖
461
金钱
190
威望
19
只看该作者 6 发表于: 2008-02-17
QUOTE(gnatix @ 2008年 02月 16日 16时 33分) [snapback]344700[/snapback]

把插件整合到安装程序,用INNO是很容易的,比如
[Files]
Source: "resource\system.dll"; DestDir: "{sys}"; Flags: regserver
不过也许我没有理解你的问题。

谢谢!
我指的是能不能把文件包括(Include)在卸载程序中,即只有卸载程序一个文件。
您说的是将文件释放到系统目录中,但我想将它包括在卸载程序本身中。
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线TiGer-X

发帖
134
金钱
0
威望
0
只看该作者 7 发表于: 2008-02-18
楼主一会儿说 Inno,一会儿说 NSIS,老虎版主给你搞混了。
离线zhfi

发帖
461
金钱
190
威望
19
只看该作者 8 发表于: 2008-02-19
我当然说的是Inno了.
也就是说,能不能将卸载程序需要的插件等资源,整合在卸载程序中,而不需要释放到安装目录或者系统目录中.
这样一来,可以避免插件被删除导致无法卸载的问题.
人生若只如初见@@一轩果

MyMPC 2013(104210239)
离线gnatix

发帖
7696
金钱
-8279
威望
-828
只看该作者 9 发表于: 2008-02-20
QUOTE(zhfi @ 2008年 02月 19日 21时 37分) [snapback]344793[/snapback]

我当然说的是Inno了.
也就是说,能不能将卸载程序需要的插件等资源,整合在卸载程序中,而不需要释放到安装目录或者系统目录中.
这样一来,可以避免插件被删除导致无法卸载的问题.

把插件的卸载程序整合到你的卸载程序中,这个不能。
但是你可以让你的卸载程序执行时运行其它插件的卸载程序。