const discVerb = '停用(&B)'; connVerb = '啟用(&A)';function DisableEthernet(const EthName: String): Boolean; var // shell1: variant; //cpFolder: variant; cpFolder: Folder; nwFolder: Folder; nVerbs: FolderItemVerbs; i,j,k: integer; begin result := false; // shell1 := CreateObject('shell.application'); cpFolder := form1.shell1.NameSpace(3); if cpFolder <> nil then begin for i := 0 to cpFolder.items.Count-1 do begin if cpFolder.Items.Item(i).Name = '網路和撥號連線' then begin nwFolder := cpFolder.items.item(i).GetFolder as Folder; if nwFolder <> nil then begin for j :=0 to nwFolder.items.Count-1 do begin if nwFolder.Items.Item(j).Name = EthName then begin nVerbs := nwFolder.Items.Item(j).Verbs; for k := 0 to nVerbs.Count-1 do begin if nVerbs.Item(k).Name = discVerb then begin nVerbs.Item(k).DoIt; Result := True; end; end; end; end; end; end; end; if nwFolder = nil then showmessage('Network and Dial-up Connections not found'); end else showmessage('control panel not found');end; function EnableEthernet(const EthName: String): Boolean; var cpFolder: Folder; nwFolder: Folder; nVerbs: FolderItemVerbs; i,j,k: integer; begin result := false; cpFolder := form1.shell1.NameSpace(3); if cpFolder <> nil then begin for i := 0 to cpFolder.items.Count-1 do begin if cpFolder.Items.Item(i).Name = '網路和撥號連線' then begin nwFolder := cpFolder.items.item(i).GetFolder as Folder; if nwFolder <> nil then begin for j :=0 to nwFolder.items.Count-1 do begin if nwFolder.Items.Item(j).Name = EthName then begin nVerbs := nwFolder.Items.Item(j).Verbs; for k := 0 to nVerbs.Count-1 do begin if nVerbs.Item(k).Name = connVerb then begin nVerbs.Item(k).DoIt; Result := True; end; end; end; end; end; end; end; if nwFolder = nil then showmessage('Network and Dial-up Connections not found'); end else showmessage('control panel not found'); end;procedure TForm1.Button1Click(Sender: TObject); begin DisableEthernet('區域連線'); end;procedure TForm1.Button2Click(Sender: TObject); begin EnableEthernet('區域連線'); end;http://beta.experts-exchange.com/Programming/Q_20648190.html //注意里面的中文,我是在繁体测试的
要USES哪个才可以使用FOLDER类啊?
To aiirii(ari-爱的眼睛): 能给个完整程序吗?你回答的文本里没有处理的程序啊? cpFolder := form1.shell1.NameSpace(3); nVerbs.Item(k).DoIt; 是第三方控件吗?
discVerb = '停用(&B)';
connVerb = '啟用(&A)';function DisableEthernet(const EthName: String): Boolean;
var
// shell1: variant;
//cpFolder: variant;
cpFolder: Folder;
nwFolder: Folder;
nVerbs: FolderItemVerbs;
i,j,k: integer;
begin
result := false; // shell1 := CreateObject('shell.application'); cpFolder := form1.shell1.NameSpace(3);
if cpFolder <> nil then
begin
for i := 0 to cpFolder.items.Count-1 do
begin
if cpFolder.Items.Item(i).Name = '網路和撥號連線' then
begin
nwFolder := cpFolder.items.item(i).GetFolder as Folder;
if nwFolder <> nil then
begin
for j :=0 to nwFolder.items.Count-1 do
begin
if nwFolder.Items.Item(j).Name = EthName then
begin
nVerbs := nwFolder.Items.Item(j).Verbs;
for k := 0 to nVerbs.Count-1 do
begin
if nVerbs.Item(k).Name = discVerb then
begin
nVerbs.Item(k).DoIt;
Result := True;
end;
end;
end;
end;
end;
end;
end;
if nwFolder = nil then
showmessage('Network and Dial-up Connections not found');
end
else
showmessage('control panel not found');end;
function EnableEthernet(const EthName: String): Boolean;
var
cpFolder: Folder;
nwFolder: Folder;
nVerbs: FolderItemVerbs;
i,j,k: integer;
begin
result := false;
cpFolder := form1.shell1.NameSpace(3);
if cpFolder <> nil then
begin
for i := 0 to cpFolder.items.Count-1 do
begin
if cpFolder.Items.Item(i).Name = '網路和撥號連線' then
begin
nwFolder := cpFolder.items.item(i).GetFolder as Folder;
if nwFolder <> nil then
begin
for j :=0 to nwFolder.items.Count-1 do
begin
if nwFolder.Items.Item(j).Name = EthName then
begin
nVerbs := nwFolder.Items.Item(j).Verbs;
for k := 0 to nVerbs.Count-1 do
begin
if nVerbs.Item(k).Name = connVerb then
begin
nVerbs.Item(k).DoIt;
Result := True;
end;
end;
end;
end;
end;
end;
end;
if nwFolder = nil then
showmessage('Network and Dial-up Connections not found');
end
else
showmessage('control panel not found');
end;procedure TForm1.Button1Click(Sender: TObject);
begin
DisableEthernet('區域連線');
end;procedure TForm1.Button2Click(Sender: TObject);
begin
EnableEthernet('區域連線');
end;http://beta.experts-exchange.com/Programming/Q_20648190.html
//注意里面的中文,我是在繁体测试的
能给个完整程序吗?你回答的文本里没有处理的程序啊?
cpFolder := form1.shell1.NameSpace(3);
nVerbs.Item(k).DoIt;
是第三方控件吗?