unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Registry, StdCtrls;type
TForm1 = class(TForm)
Bit_cancel: TButton;
A_Check: TCheckBox;
Bit_hide: TButton;
procedure Bit_hideClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Bit_hideClick(Sender: TObject);
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
with reg do
begin
rootkey:=HKEY_CLASSES_ROOT;
if openkey('\CLSID\{21EC2020-3AEA-1069-A2DD-08002B30309D}\InProcServer32',true) then
begin
WriteString('默认','shell32.dll-');//问题在这里,修改默认时,锁定控制面板,但是多加一个默认项..不修改原来的..
end;
reg.CloseKey;
reg.Free;
end;
end;procedure TForm1.FormCreate(Sender: TObject);
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
with reg do
begin
rootkey:=HKEY_CLASSES_ROOT;
if openkey('\CLSID\{21EC2020-3AEA-1069-A2DD-08002B30309D}\InProcServer32',true) and ValueExists('默认') //这里是可以判断到默认项的哦....
begin
if readString('默认')='shell32.dll-' then
A_check.Checked:=true
else
A_check.Checked:=false;
end;
reg.CloseKey;
reg.Free;
end;
end;end.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Registry, StdCtrls;type
TForm1 = class(TForm)
Bit_cancel: TButton;
A_Check: TCheckBox;
Bit_hide: TButton;
procedure Bit_hideClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Bit_hideClick(Sender: TObject);
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
with reg do
begin
rootkey:=HKEY_CLASSES_ROOT;
if openkey('\CLSID\{21EC2020-3AEA-1069-A2DD-08002B30309D}\InProcServer32',true) then
begin
WriteString('默认','shell32.dll-');//问题在这里,修改默认时,锁定控制面板,但是多加一个默认项..不修改原来的..
end;
reg.CloseKey;
reg.Free;
end;
end;procedure TForm1.FormCreate(Sender: TObject);
var
reg:TRegistry;
begin
reg:=TRegistry.Create;
with reg do
begin
rootkey:=HKEY_CLASSES_ROOT;
if openkey('\CLSID\{21EC2020-3AEA-1069-A2DD-08002B30309D}\InProcServer32',true) and ValueExists('默认') //这里是可以判断到默认项的哦....
begin
if readString('默认')='shell32.dll-' then
A_check.Checked:=true
else
A_check.Checked:=false;
end;
reg.CloseKey;
reg.Free;
end;
end;end.
WriteString('','shell32.dll-');