高手请指教:
1. 我在程序的USES里加了“FileCtrl”单元,编译的时候总会有个“Warning”
是:unit 'FileCtrl' is specific to a platform
2. 我想在程序里想动态在窗口上加一个Label,但运行是那个label出不来,也没提示
什么错误,代码是这样的:
procedure TForm1.Button1Click(...);
var LabelPth: TLabel;
begin
LabelPth:=TLabel.Create(Self);
LabelPth.caption:='122344';
LabelPth.Left:=30;
LabelPth.Top:=50;
LabelPth.visible:=true;
end;
3. 我自己做了个安装程序,但不知道怎么在程序里为一个EXE动态创建快捷方式?
1. 我在程序的USES里加了“FileCtrl”单元,编译的时候总会有个“Warning”
是:unit 'FileCtrl' is specific to a platform
2. 我想在程序里想动态在窗口上加一个Label,但运行是那个label出不来,也没提示
什么错误,代码是这样的:
procedure TForm1.Button1Click(...);
var LabelPth: TLabel;
begin
LabelPth:=TLabel.Create(Self);
LabelPth.caption:='122344';
LabelPth.Left:=30;
LabelPth.Top:=50;
LabelPth.visible:=true;
end;
3. 我自己做了个安装程序,但不知道怎么在程序里为一个EXE动态创建快捷方式?
2,加上
LabelPth.Parent:=form1;
3.安装程序可以设定是否建立快捷方式的。
如果程序控制自己建立,则
procedure CreateLnkFile;
var
tmpObject: IUnknown;
tmpSLink: IShellLink;
tmpPFile: IPersistFile;
PIDL: PItemIDList;
StartupDirectory: array[0..MAX_PATH] of Char;
StartupFilename: string;
begin
StartupFilename := Appname;
tmpObject := CreateComObject(CLSID_ShellLink); //创建建立快捷方式的外壳扩展
tmpSLink := tmpObject as IShellLink; //取得接口
tmpPFile := tmpObject as IPersistFile; //用来储存*.lnk文件的接口
tmpSLink.SetPath(pChar(StartupFilename)); //设定所在路径
tmpSLink.SetWorkingDirectory(pChar(ExtractFilePath(StartupFilename))); //设定工作目录
LinkFilename := ExtractFilePath(StartupFilename) + 'ATM-DVR.lnk';
tmpPFile.Save(pWChar(LinkFilename), FALSE); //保存*.lnk文件
end;
Filectl只适用于Windows平台,对其他的平台不使用
2,labelpth.Parent:= Self;
注意:是不是还有点问题,没有释放资源的
LabelPth.Parent:=form1;
.Parent就是用来指定父窗体的 是LabelPth的媒介~~~~~~~~~