http://www.cnblogs.com/awei0611/archive/2010/06/09.html 1 、如何让协议许可页面默认选中我同意按钮 [delphi] view plaincopyprint? [code] procedure InitializeWizard(); begin WizardForm . LICENSEACCEPTEDRADIO . Checked := true ; end ; [code]pro
http://www.cnblogs.com/awei0611/archive/2010/06/09.html
1 、如何让协议许可页面默认选中我同意按钮
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- WizardForm.LICENSEACCEPTEDRADIO.Checked := true;
- end;
[code] procedure InitializeWizard(); begin WizardForm.LICENSEACCEPTEDRADIO.Checked := true; end;
2、自定义安装程序右上角图片大小
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- WizardForm.WizardSmallBitmapImage.width:=150; //设置页眉图片的大小
- WizardForm.WizardSmallBitmapImage.left:=WizardForm.width-150; //设置左边页眉留出的空隙
- WizardForm.PAGENAMELABEL.width:=0; //设置标题文字显示的大小
- WizardForm.PAGEDESCRIPTIONLABEL.width:=0; //设置标题文字显示的大小
- end;
[code] procedure InitializeWizard(); begin WizardForm.WizardSmallBitmapImage.width:=150; //设置页眉图片的大小 WizardForm.WizardSmallBitmapImage.left:=WizardForm.width-150; //设置左边页眉留出的空隙 WizardForm.PAGENAMELABEL.width:=0; //设置标题文字显示的大小 WizardForm.PAGEDESCRIPTIONLABEL.width:=0; //设置标题文字显示的大小 end;
或者
//自定义安装向导小图片
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- Wizardform.WizardSmallBitmapImage.left:= WizardForm.width-164; //自定义安装向导小图片显示位置
- WizardForm.WizardSmallBitmapImage.width:=164; //自定义安装向导小图片宽度
- Wizardform.PageNameLabel.width:= 495 - 164 -36; //这儿必须定义,数值根据图片宽度更改,显示软件名称的位置
- Wizardform.PageDescriptionLabel.width:= 495 - 164 -42; //显示页面信息的位置
- end;
[code] procedure InitializeWizard(); begin Wizardform.WizardSmallBitmapImage.left:= WizardForm.width-164; //自定义安装向导小图片显示位置 WizardForm.WizardSmallBitmapImage.width:=164; //自定义安装向导小图片宽度 Wizardform.PageNameLabel.width:= 495 - 164 -36; //这儿必须定义,数值根据图片宽度更改,显示软件名称的位置 Wizardform.PageDescriptionLabel.width:= 495 - 164 -42; //显示页面信息的位置 end;
3、自定义BeveledLabel显示代码
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- WizardForm.BeveledLabel.Enabled:=true; //允许显示
- WizardForm.BeveledLabel.Font.Color:=$00058451;; //显示颜色
- WizardForm.BeveledLabel.Font.Style := WizardForm.BeveledLabel.Font.Style + [fsBold]; //显示字体
- WizardForm.BeveledLabel.Left:=5; //显示位置
- end;
[code] procedure InitializeWizard(); begin WizardForm.BeveledLabel.Enabled:=true; //允许显示 WizardForm.BeveledLabel.Font.Color:=$00058451;; //显示颜色 WizardForm.BeveledLabel.Font.Style := WizardForm.BeveledLabel.Font.Style + [fsBold]; //显示字体 WizardForm.BeveledLabel.Left:=5; //显示位置 end;
4、自定义安装向导图片
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- Wizardform.WELCOMELABEL1.left:= 18; //自定义欢迎页面标题1显示位置
- Wizardform.WELCOMELABEL2.left:= 18; //自定义欢迎页面标题2显示位置
- Wizardform.WizardBitmapImage.left:= WizardForm.width-164//自定义安装向导图片显示位置(显示大小,此处为居右显示)
- end;
[code] procedure InitializeWizard(); begin Wizardform.WELCOMELABEL1.left:= 18; //自定义欢迎页面标题1显示位置 Wizardform.WELCOMELABEL2.left:= 18; //自定义欢迎页面标题2显示位置 Wizardform.WizardBitmapImage.left:= WizardForm.width-164 //自定义安装向导图片显示位置(显示大小,此处为居右显示) end;
5、显示出组件选择框 [Types]
[delphi] view plaincopyprint?
- Name: full; Description: 推荐
- Name: default; Description: 典型
- Name: custom; Description: 自定义; Flags: iscustom
- ;告诉安装程序这个类型是自定义类型。必须定义iscustom这个参数,才能显示出组件选择框
Name: full; Description: 推荐 Name: default; Description: 典型 Name: custom; Description: 自定义; Flags: iscustom ;告诉安装程序这个类型是自定义类型。必须定义iscustom这个参数,才能显示出组件选择框
6、定义[Messages]的颜色
[delphi] view plaincopyprint?
- [code]
- procedure InitializeWizard();
- begin
- WizardForm.BeveledLabel.Enabled:= True;
- WizardForm.BeveledLabel.Font.Color:= clblue;
- end;
[code] procedure InitializeWizard(); begin WizardForm.BeveledLabel.Enabled:= True; WizardForm.BeveledLabel.Font.Color:= clblue; end;
7、不显示一些特定的安装界面
[delphi] view plaincopyprint?
- [code]
- function ShouldSkipPage(PageID: Integer): Boolean;
- begin
- if PageID=wpReady then
- result := true;
- end;
- (*
- wpReady 是准备安装界面
- PageID查询 INNO帮助中的 Pascal 脚本: 事件函数常量
- 预定义向导页 CurPageID 值
- wpWelcome, wpLicense, wpPassword, wpInfoBefore, wpUserInfo, wpSelectDir, wpSelectComponents, wpSelectProgramGroup, wpSelectTasks, wpReady, wpPreparing, wpInstalling, wpInfoAfter, wpFinished
[code] function ShouldSkipPage(PageID: Integer): Boolean; begin if PageID=wpReady then result := true; end; (* wpReady 是准备安装界面 PageID查询 INNO帮助中的 Pascal 脚本: 事件函数常量 预定义向导页 CurPageID 值 wpWelcome, wpLicense, wpPassword, wpInfoBefore, wpUserInfo, wpSelectDir, wpSelectComponents, wpSelectProgramGroup, wpSelectTasks, wpReady, wpPreparing, wpInstalling, wpInfoAfter, wpFinished
8、换行符号
在 [Messages] 换行符号为%n
在 MsgBox 中换行符号为 #13#10 //#13 为回车字符
9、颜色代码
(1)一个值形如 $bbggrr, 这里的 rr, gg 和 bb 指定了两位的亮度值(以十六进制表示)分别为红色,绿色和蓝色。
(2)预定义的颜色名称:
clBlack(黑色),clMaroon(暗红),clGreen(绿色),clOlive(橄榄绿),
clNavy(深蓝),clPurple(紫色),clTeal(深青),clGray(灰色),
clSilver(浅灰),clRed(红色),clLime(浅绿),clYellow(黄色),
clBlue(蓝色),clFuchsia(紫红),clAqua(青绿),clWhite(白色)。
10、inno代码注释符号
; 实例 —— ; 分号
// 实例 —— // 双斜杠 多用在code段
{ } 实例 —— {大括号 多用在code段}
注释符号均在英文输入法状态下输入
11、在运行卸载程序前显示弹出式消息
[delphi] view plaincopyprint?
- [code]
- function InitializeUninstall(): Boolean;
- begin
- if MsgBox('', mbConfirmation, MB_YESNO) = IDYES then
- result:=true
- else
- result:=false;
- end;
[code] function InitializeUninstall(): Boolean; begin if MsgBox('', mbConfirmation, MB_YESNO) = IDYES then result:=true else result:=false; end;
12、安装、卸载时判断是否程序正在运行,卸载完成时自动打开网页
[delphi] view plaincopyprint?
- [code]
- var
- ErrorCode: Integer;
- IsRunning: Integer;
- // 安装时判断客户端是否正在运行
- function InitializeSetup(): Boolean;
- begin
- Result :=true; //安装程序继续
- IsRunning:=FindWindowByWindowName('东方宽频网络电视');
- while IsRunning0do
- begin
- if Msgbox('安装程序检测到客户端正在运行。' #13#13'您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then
- begin
- Result :=false; //安装程序退出
- IsRunning :=0;
- endelsebegin
- Result :=true; //安装程序继续
- IsRunning:=FindWindowByWindowName('东方宽频网络电视');
- end;
- end;
- end;
- // 卸载时判断客户端是否正在运行
- function InitializeUninstall(): Boolean;
- begin
- Result :=true; //安装程序继续
- IsRunning:=FindWindowByWindowName('东方宽频网络电视');
- while IsRunning0do
- begin
- if Msgbox('安装程序检测到客户端正在运行。' #13#13'您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then
- begin
- Result :=false; //安装程序退出
- IsRunning :=0;
- endelsebegin
- Result :=true; //安装程序继续
- IsRunning:=FindWindowByWindowName('东方宽频网络电视');
- end;
- end;
- end;
- procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
- begin
- case CurUninstallStep of
- usUninstall:
- begin// 开始卸载
- end;
- usPostUninstall:
- begin// 卸载完成
- // MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall just finished.', mbInformation, MB_OK);
- // ...insert code to perform post-uninstall tasks here...
- ShellExec('open', 'http://www.dreams8.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
- end;
- end;
- end;
[code] var ErrorCode: Integer; IsRunning: Integer; // 安装时判断客户端是否正在运行 function InitializeSetup(): Boolean; begin Result :=true; //安装程序继续 IsRunning:=FindWindowByWindowName('东方宽频网络电视'); while IsRunning0 do begin if Msgbox('安装程序检测到客户端正在运行。' #13#13 '您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then begin Result :=false; //安装程序退出 IsRunning :=0; end else begin Result :=true; //安装程序继续 IsRunning:=FindWindowByWindowName('东方宽频网络电视'); end; end; end; // 卸载时判断客户端是否正在运行 function InitializeUninstall(): Boolean; begin Result :=true; //安装程序继续 IsRunning:=FindWindowByWindowName('东方宽频网络电视'); while IsRunning0 do begin if Msgbox('安装程序检测到客户端正在运行。' #13#13 '您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then begin Result :=false; //安装程序退出 IsRunning :=0; end else begin Result :=true; //安装程序继续 IsRunning:=FindWindowByWindowName('东方宽频网络电视'); end; end; end; procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin case CurUninstallStep of usUninstall: begin // 开始卸载 end; usPostUninstall: begin // 卸载完成 // MsgBox('CurUninstallStepChanged:' #13#13 'Uninstall just finished.', mbInformation, MB_OK); // ...insert code to perform post-uninstall tasks here... ShellExec('open', 'http://www.dreams8.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode); end; end; end;
13、 删除文件和删除文件夹
[delphi] view plaincopyprint?
- //删除文件 用 DeleteFile 只能删除一个文件,不能使用通配符来删除多个文件
- DeleteFile(ExpandConstant('{app}\abc.exe'));
- //删除所有文件及文件夹
- DelTree(ExpandConstant('{app}'), True, True, False);
//删除文件 用 DeleteFile 只能删除一个文件,不能使用通配符来删除多个文件 DeleteFile(ExpandConstant('{app}\abc.exe')); //删除所有文件及文件夹 DelTree(ExpandConstant('{app}'), True, True, False);
14、BorderStyle
TFormBorderStyle = (bsNone, bsSingle, bsSizeable, bsDialog, bsToolWindow, bsSizeToolWin);
无边界式(bsNone) ,单边固定式(bsSingle),双边可变式(bsSizeable),对话框式(bsDialog)
15、if else
[delphi] view plaincopyprint?
- function NextButtonClick(CurPageID: Integer): Boolean;
- var
- ResultCode: Integer;
- begin
- Result := True;
- if (CurPageID = wpSelectDir) then
- begin
- MsgBox('AAAA', mbInformation, MB_OK);
- end
- else
- begin
- MsgBox('BBBB', mbInformation, MB_OK);
- end;
- end;
function NextButtonClick(CurPageID: Integer): Boolean; var ResultCode: Integer; begin Result := True; if (CurPageID = wpSelectDir) then begin MsgBox('AAAA', mbInformation, MB_OK); end else begin MsgBox('BBBB', mbInformation, MB_OK); end; end;
16、安装结束界面增加“设为首页”选项
[delphi] view plaincopyprint?
- [Tasks]
- Name: changestartpage; Description: "设置vistaqq为默认主页"
- [Registry]
- Root: HKCU; Subkey: "Software\Microsoft\Internet Explorer\Main"; ValueType: string; ValueName: "Start Page"; ValueData: "http://www.vistaqq.com"; tasks: changestartpage
[Tasks] Name: changestartpage; Description: "设置vistaqq为默认主页" [Registry] Root: HKCU; Subkey: "Software\Microsoft\Internet Explorer\Main"; ValueType: string; ValueName: "Start Page"; ValueData: "http://www.vistaqq.com"; tasks: changestartpage
17、添加“关于”和网站链接按钮
[delphi] view plaincopyprint?
- [Code]
- procedure URLLabelOnClick(Sender: TObject);
- var
- ErrorCode: Integer;
- begin
- ShellExec('open', 'http://www.vistaqq.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
- end;
- procedure AboutButtonOnClick(Sender: TObject);
- begin
- MsgBox(#13'Vista 状态条风格盘符' #13 #13'本软件由jinn制作,希望各位登陆中天VIP工作室!' #13#13, mbInformation, MB_OK);
- end;
- var
- AboutButton, CancelButton: TButton;
- URLLabel: TNewStaticText;
- procedure InitializeWizard();
- begin
- { Create the pages }
- WizardForm.PAGENAMELABEL.Font.Color:= clred;
- WizardForm.PAGEDESCRIPTIONLABEL.Font.Color:= clBlue;
- WizardForm.WELCOMELABEL1.Font.Color:= clGreen;
- WizardForm.WELCOMELABEL2.Font.Color:= clblack;
- CancelButton := WizardForm.CancelButton;
- AboutButton := TButton.Create(WizardForm);
- AboutButton.Left := WizardForm.ClientWidth - CancelButton.Left - CancelButton.Width;
- AboutButton.Top := CancelButton.Top;
- AboutButton.Width := CancelButton.Width;
- AboutButton.Height := CancelButton.Height;
- AboutButton.Caption := '&About';
- AboutButton.OnClick := @AboutButtonOnClick;
- AboutButton.Parent := WizardForm;
- URLLabel := TNewStaticText.Create(WizardForm);
- URLLabel.Caption := '中天VIP工作室';
- URLLabel.Cursor := crHand;
- URLLabel.OnClick := @URLLabelOnClick;
- URLLabel.Parent := WizardForm;
- { Alter Font *after* setting Parent so the correct defaults are inherited first }
- URLLabel.Font.Style := URLLabel.Font.Style + [fsUnderline];
- URLLabel.Font.Color := clBlue;
- URLLabel.Top := AboutButton.Top + AboutButton.Height - URLLabel.Height - 2;
- URLLabel.Left := AboutButton.Left + AboutButton.Width + ScaleX(20);
- end;
18、去掉安装程序左上角“关于安装程序”的代码
[delphi] view plaincopyprint?
- procedure InitializeWizard();
- begin
- WizardForm.BorderIcons:= [biMinimize];
- end;
- procedure CurPageChanged(CurPage: Integer);
- begin
- if CurPage=wpWelcome then
- WizardForm.BorderIcons:= [biSystemMenu, biMinimize];
- end;
- 或者
- procedure InitializeWizard();
- begin
- WizardForm.BORDERICONS := [biHelp, biSystemMenu, biMinimize];
- end;
procedure InitializeWizard(); begin WizardForm.BorderIcons:= [biMinimize]; end; procedure CurPageChanged(CurPage: Integer); begin if CurPage=wpWelcome then WizardForm.BorderIcons:= [biSystemMenu, biMinimize]; end; 或者 procedure InitializeWizard(); begin WizardForm.BORDERICONS := [biHelp, biSystemMenu, biMinimize]; end;
19、自定义BeveledLabel文字
[Messages]
BeveledLabel=中天VIP工作室
20、自定义安装程序界面左上角“安装”文字
[message]
SetupAppTitle=需要的字
SetupWindowTitle=需要的字
21、自定义安装程序版本号
VersionInfoVersion=1.1
VersionInfoTextVersion=1.1

ACID属性包括原子性、一致性、隔离性和持久性,是数据库设计的基石。1.原子性确保事务要么完全成功,要么完全失败。2.一致性保证数据库在事务前后保持一致状态。3.隔离性确保事务之间互不干扰。4.持久性确保事务提交后数据永久保存。

MySQL既是数据库管理系统(DBMS),也与编程语言紧密相关。1)作为DBMS,MySQL用于存储、组织和检索数据,优化索引可提高查询性能。2)通过SQL与编程语言结合,嵌入在如Python中,使用ORM工具如SQLAlchemy可简化操作。3)性能优化包括索引、查询、缓存、分库分表和事务管理。

MySQL使用SQL命令管理数据。1.基本命令包括SELECT、INSERT、UPDATE和DELETE。2.高级用法涉及JOIN、子查询和聚合函数。3.常见错误有语法、逻辑和性能问题。4.优化技巧包括使用索引、避免SELECT*和使用LIMIT。

MySQL是一种高效的关系型数据库管理系统,适用于存储和管理数据。其优势包括高性能查询、灵活的事务处理和丰富的数据类型。实际应用中,MySQL常用于电商平台、社交网络和内容管理系统,但需注意性能优化、数据安全和扩展性。

SQL和MySQL的关系是标准语言与具体实现的关系。1.SQL是用于管理和操作关系数据库的标准语言,允许进行数据的增、删、改、查。2.MySQL是一个具体的数据库管理系统,使用SQL作为其操作语言,并提供高效的数据存储和管理。

InnoDB使用redologs和undologs确保数据一致性和可靠性。1.redologs记录数据页修改,确保崩溃恢复和事务持久性。2.undologs记录数据原始值,支持事务回滚和MVCC。

EXPLAIN命令的关键指标包括type、key、rows和Extra。1)type反映查询的访问类型,值越高效率越高,如const优于ALL。2)key显示使用的索引,NULL表示无索引。3)rows预估扫描行数,影响查询性能。4)Extra提供额外信息,如Usingfilesort提示需要优化。

Usingtemporary在MySQL查询中表示需要创建临时表,常见于使用DISTINCT、GROUPBY或非索引列的ORDERBY。可以通过优化索引和重写查询避免其出现,提升查询性能。具体来说,Usingtemporary出现在EXPLAIN输出中时,意味着MySQL需要创建临时表来处理查询。这通常发生在以下情况:1)使用DISTINCT或GROUPBY时进行去重或分组;2)ORDERBY包含非索引列时进行排序;3)使用复杂的子查询或联接操作。优化方法包括:1)为ORDERBY和GROUPB


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Dreamweaver Mac版
视觉化网页开发工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3汉化版
中文版,非常好用

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具