人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

用DELPHI寫注冊表完成創建IIS虛擬目錄

用DELPHI寫注冊表完成創建IIS虛擬目錄

更新時間:2022-09-05 文章作者:未知 信息來源:網絡 閱讀次數:

  [原創] 計世商情網 徐輝   
     
  最近筆者在制作一安裝程序時遇到需動態建立虛擬目錄的問題,通過在網上查找相關資料,發現有很多關于用DELPHI來建立IIS的虛擬目錄的例子,但都是需要加載類庫,不容量調試,且對類庫知識的掌握程度要求較高   
。筆者就是幾次調試都沒通過(能力有限,知識有限呀:-(),自古通向羅馬就不止一條道。通過對注冊表的研究,終于讓我發現了IIS在注冊表中的老巢,通過N次研究(N<3)終于弄清動態建立虛擬目錄的方法。筆者所采用的是通過寫注冊表的方式來實現,方法簡單,不需要加入類的復雜過程,唯一的不同是需要重啟電腦后才能生效。現將代碼公布如下,希望對能對此有興趣的朋友們有所幫助,代碼如下:
procedure TForm1.Button1Click(Sender: TObject);
var
  RegODBC:TRegistry;
  registerTemp : TRegistry;
  SysPath: array [0..255] of char;
begin
  RegODBC:=TRegistry.create;     //訪問注冊表
  RegODBC.RootKey:=HKEY_LOCAL_MACHINE;
  RegODBC.OpenKey('\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots',True);
  getsystemdirectory(SysPath,255);
  if regodbc.ValueExists('/fire') then
    begin
      suimessage1.Text:='本機WEB已存在名為fire的虛擬目錄。'+#13#10+'請將此fire刪除或重命名。';
        suimessage1.IconType:=suistop;
        suimessage1.ButtonCount:=1;
        suimessage1.Caption:='錯誤';
        if suimessage1.ShowModal=mrok then
          winexec(pchar(SysPath+'\inetsrv\inetmgr.exe'),sw_shownormal);
       exit;
    end
  else
    begin
  registerTemp := TRegistry.Create; //建立一個Registry實例
  with registerTemp do
    begin
      RootKey:=HKEY_LOCAL_MACHINE;//設置根鍵值為HKEY_LOCAL_MACHINE
//找到或創建\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots,寫入IIS配置信息
     if OpenKey('\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots',True) then
       begin
         WriteString('/fire','E:\fire,,205');
       end
     else//創建鍵值失敗
       begin
          suimessage1.Text:='IIS配置失敗,本程序即將關閉。'+#13#10+'關閉后請先檢查Internet服務管理器,排除錯誤或安裝后再運行本程序。';
          suimessage1.IconType:=suistop;
          suimessage1.ButtonCount:=1;
          suimessage1.Caption:='錯誤';
        if suimessage1.ShowModal=mrok then
           application.Terminate ;
       end;
     CloseKey;
    Free;
  end;    
    end;
  RegODBC.Free;
end;

說明:代碼中用到了suipack4控件的suimessagedialog組件(起提示作用),例子的確認窗口也可通過Application.MessageBox()來替代。代碼在DELPHI6+WINDOWS2000中調試通過。 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 临夏市| 旌德县| 湘潭县| 松溪县| 泰顺县| 阜南县| 斗六市| 金溪县| 八宿县| 张北县| 溧水县| 通江县| 子洲县| 家居| 南木林县| 百色市| 论坛| 中江县| 汉寿县| 临泽县| 滕州市| 宜州市| 青浦区| 神木县| 固始县| 贵南县| 南乐县| 陆良县| 泗阳县| 桂平市| 怀宁县| 屏东市| 盱眙县| 紫金县| 获嘉县| 深水埗区| 吉木萨尔县| 永登县| 明星| 富平县| 凤台县|