制作一个简单的setup
2008-04-09 04:21:10来源:互联网 阅读 ()
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, jpeg, ExtCtrls, StdCtrls, ComCtrls, Grids,
DirOutln, Buttons, DdeMan,shlobj,comobj,activex;
type
TForm1 = class(TForm)
Image1: TImage;
Label1: TLabel;
Image2: TImage;
Label3: TLabel;
Label2: TLabel;
Image3: TImage;
Label4: TLabel;
DdeClientConv1: TDdeClientConv;
Label5: TLabel;
procedure FormPaint(Sender: TObject);
procedure Label3Click(Sender: TObject);
procedure Label4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
smacro:string;
szmacro:array[0..254] of char;
sgroupdesc,sgroupname:string;
sprogdesc:string;
sprogicon:string;
res:tresourcestream;
resname,resnewname:string;
implementation
uses Unit4, Unit5;
{$R *.dfm}
{$R myres.RES}
procedure TForm1.FormPaint(Sender: TObject);
var
i,j:Integer;
Dct:TRect;
begin
form1.WindowState:=wsMaximized;
j:=form1.width;
//获得表单高度
for i:=0 to 255 do
//此处设置RGB()中一个颜色值
begin
Canvas.Brush.Color:=RGB(0,0,255-i);
//每次画矩形的画刷颜色 (左,上,右,下)
//Dct:=Rect(i*2,0,(i 1)*2,j);
Dct:=Rect(0,i*2,j,(i 1)*3);
//每次刷绘的矩形区域
Canvas.FillRect(Dct);
//填充颜色
end;
end;
procedure TForm1.Label3Click(Sender: TObject);
var
smacro:string;
szmacro:array[0..254] of char;
sgroupdesc,sgroupname:string;
sprogdesc:string;
sprogicon:string;
tmpObject:IUnknown;
tmpSLink:IShellLink;
tmpPFile:IPersistFile;
PIDL:PItemIDList;
StartupDirectory : array[0..MAX_PATH] of Char;
StartupFilename : String;
LinkFilename : WideString;
c1:THandle;
begin
label5.Enabled:=false;
form5.show;
if label5.Enabled=false then
begin
if not DirectoryExists(''''C:\方奇flash播放器'''') then
try
ForceDirectories(''''C:\方奇flash播放器'''');
resnewname:=trim(''''C:\方奇flash播放器\方奇flash播放器.exe'''');
resname:=''''MYDBAPP'''';
res:=tresourcestream.Create(hinstance,resname,pchar(''''mydbappfile''''));
res.savetofile(resnewname);
ddeclientconv1.OpenLink;
//建立组群
sgroupdesc:=''''方奇系列软件 '''';
sgroupname:=''''方奇flash播放器v1.0'''';
//组成宏指令
smacro:=''''creategroup('''' ''''方奇系列软件 '''' '''','''' sgroupname '''')'''';
strpcopy(szmacro,smacro);
ddeclientconv1.ExecuteMacro(szmacro,false); //执行宏指令
//建立ICON图像
sprogicon:=trim(''''C:\方奇flash播放器\方奇flash播放器.exe'''');
sprogdesc:=''''方奇系列软件'''';
smacro:=''''[additem('''' sprogicon '''','''' sprogdesc '''')]'''';
strpcopy(szmacro,smacro);
ddeclientconv1.ExecuteMacro(szmacro,false);
StartupFilename := ''''方奇flash播放器.exe'''';
tmpObject := CreateComObject(CLSID_ShellLink);
tmpSLink := tmpObject as IShellLink;
tmpPFile := tmpObject as IPersistfile;
tmpSLink.SetPath(pChar(StartupFilename));
tmpSLink.SetWorkingDirectory(pChar(ExtractFilePath(StartupFilename)));
SHGetSpecialFolderLocation(0,CSIDL_DESKTOPDIRECTORY,PIDL);
SHGetPathFromIDList(PIDL,StartupDirectory);
LinkFilename := StartupDirectory ''''\方奇flash播放器.exe'''';
resnewname:=trim(LinkFilename);
res.savetofile(resnewname);
res.free;
//showmessage(''''方奇flash播放器v1.0安装在C:\方奇flash播放器\文件夹下'''');
except
MessageBox(getFocus,''''创建目录失败!'''',''''信息'''',0);
Exit;
end
else Exit;
ModalResult:= mrOK;
end;
end;
procedure TForm1.Label4Click(Sender: TObject);
begin
form4.show;
end;
end.
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:模拟进程调度(delphi写的)
下一篇:编译原理的一个简单的枚举算法
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash