程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 如何通過程序實現網卡的啟用和禁止功能?

如何通過程序實現網卡的啟用和禁止功能?

編輯:Delphi

  在Delphi中選Project Import Type Library命令,在對話框中選Import Microsoft Shell Controls And Automation類型庫,點Install後,在Delphi的ActiveX控件板上就多了TShellFolderItem,TShellLinkObject,TShellFolderVIEw,TShell,TSearchCommand等幾個組件

  const
     discVerb = '禁用(&B)';
     connVerb = '啟用(&A)';

  function TForm1.DisableEthernet(const EthName,State: String): Boolean;
  var
    cpFolder: Folder;
    nwFolder: Folder;
    nVerbs: FolderItemVerbs;
    i,j,k: integer;
    aItem: TListItem;
  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 = State then
                  begin
                    nVerbs.Item(k).DoIt;
                    aItem := Form1.lvLog.Items.Add;
                    aItem.Caption := FormatDateTime('yyyy-mm-dd hh:mm:ss',now);
                    aItem.SubItems.Add(EthName);
                    aItem.SubItems.Add(State);
                    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('本地連接',discVerb);
  end;

  procedure TForm1.Button2Click(Sender: TObject);
  begin
    DisableEthernet('本地連接',connVerb);
  end;

  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved