想模仿控制面板中 添加或删除程序的效果
我现在也知道是从这个链值下来取数据
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'在这个项下 DisplayIcon键值有的软件有,有的软件没有,这样就造成取到的软件有的有图标,有的没图标。但是添加删除程序都能取得到图标,这要如何做啊
我现在也知道是从这个链值下来取数据
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'在这个项下 DisplayIcon键值有的软件有,有的软件没有,这样就造成取到的软件有的有图标,有的没图标。但是添加删除程序都能取得到图标,这要如何做啊
解决方案 »
- 控件输入问题?
- 应用程序安装时注册了一个ActiveX控件(my.ocx),现在我修改了my.ocx而不想重新制作安装程序,如何做?
- dbexpress的简单问题++请教
- 大家都来谈谈----------贫富差别太大了
- 同志们:关于Delphi学习问题
- 如何找到指定的字符在某一字符串中出现的每一次的位置?
- 今天早上想导入db文件到sqlserver ,结果打开db文件一看,里面有中文的字段全是乱码。
- 我的程序大概框架是这样的 :在创建主窗口时,创建登录窗口,登录只是关闭登录窗口,接着往下运行
- Delphi中如何连接Paradox和Access数据库?
- 请问如何使treeview的内容随着鼠标的移动上下滚动(当然不是拖动scrollbar了)。?
- 关于fastreport分组脚
- 同时添加编号和用户名信息到checklistbox中??
var
Count : Integer;
FileName : String;
i:integer;
begin
if( FileName <> Edit1.Text ) then
begin
FileName:=Edit1.Text;
I := 0;
Count := ExtractIcon( Application.Handle, PChar(FileName),
$FFFFFFFF );
end
else
Inc(I);
if( I < Count ) then
Image1.Picture.Icon.Handle :=
ExtractIcon( Application.Handle, PChar(FileName), I )
else
ShowMessage(’没有找到!’ );
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
getIcon;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
opendialog1.Execute;
edit1.Text:=opendialog1.FileName;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
savedialog1.Execute;
image1.Picture.SaveToFile(savedialog1.FileName);
end;
参考这个代码获得exe文件的icon,如果没有icon你可以自己弄个默认的,这个就无所谓了
是这样的,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall 项下,如果能得到程序的主执行程序也是能取得图标的,但是在这个项下,有的程序连安装路径都没有,更别说主执行程序的名称了,如果没有主执行程序的文件名,怎么取图标啊