有關IIS的虛擬目錄的控制總結

来源:http://www.cnblogs.com/shouce/archive/2016/04/25/5429275.html
-Advertisement-
Play Games

程式中需USE COMOBJ單元 1.Q:如何得到機器上IIS中所有的WEB虛擬站點. A: var InstallPath: String; WebSite, WebServer, WebRoot: Variant; count: Integer; Flag: Boolean; begin Fla ...


程式中需USE   COMOBJ單元   
  1.Q:如何得到機器上IIS中所有的WEB虛擬站點.   
    
  A:   
    
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot:   Variant;   
      count:   Integer;   
      Flag:   Boolean;   
  begin   
        Flag   :=True;   
        count   :=1;   
    
        while     Flag   do   
        begin   
              try   
    
                  WebSite   :=CreateOLEObject('IISNamespace');   
                  WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
                  WebServer   :=   WebSite.GetObject('IIsWebServer',   inttostr(count));   
                  Memo1.Lines.Add(WebServer.ServerComment);   
                  inc(count);   
                  except   
                      flag   :=False;   
                  end;   
          end;   
    
  2.   Q:通過程式控制預設WEB站點的啟動,停止,暫停   
  A:   
  //停止WEB站點   
    
  procedure   TForm1.btn_stopClick(Sender:   TObject);   
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot:   Variant;   
  begin   
        try   
              WebSite   :=CreateOLEObject('IISNamespace');   
              WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
              WebServer   :=   WebSite.GetObject('IIsWebServer',   '1');   
              if   string(webserver.ServerState)   ='2'   then   
              begin   
                  webserver.stop;   
                  showmessage('停止服務成功');   
              end;   
        except   
              showmessage('停止服務失敗');   
        end;   
    
  end;   
    
  //啟動WEB站點   
    
  procedure   TForm1.btn_startClick(Sender:   TObject);   
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot:   Variant;   
  begin   
          try   
              WebSite   :=CreateOLEObject('IISNamespace');   
              WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
              WebServer   :=   WebSite.GetObject('IIsWebServer',   '1');   
              if   string(webserver.ServerState)   ='4'   then   
              begin   
                  webserver.start;   
                  showmessage('啟動服務成功');   
              end;   
          except   
              showmessage('啟動服務失敗');   
          end;   
    
    
  end;   
    
  //暫停WEB站點   
    
  procedure   TForm1.btn_pauseClick(Sender:   TObject);   
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot:   Variant;   
  begin   
      try   
          WebSite   :=CreateOLEObject('IISNamespace');   
          WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
          WebServer   :=   WebSite.GetObject('IIsWebServer',   '1');   
          if   string(webserver.ServerState)   ='2'   then   
          begin   
              webserver.pause;   
              showmessage('暫停服務成功');   
          end;   
      except   
          showmessage('暫停服務失敗');   
      end;   
    
  end;   
    
    
    
  3.虛擬目錄的創建   
  a:以程式在網上或超級猛料中也有,但都沒有指定應用程式名,以下程式已完成此功能   
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot,   VDir:   Variant;   
  begin   
      WebSite   :=   CreateOleObject('IISNamespace');   
      WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
      WebServer   :=   WebSite.GetObject('IIsWebServer',   '1');   
      webserver.setinfo;   
      WebRoot   :=   WebServer.GetObject('IIsWebVirtualDir',   'Root');   
      VDir   :=   WebRoot.Create('IIsWebVirtualDir',   'VariantTest');   
      VDir.AccessRead   :=   True;   
      VDir.Path   :=   'C:\test';   
      VDir.AppCreate(True);     //如果沒有這句的話,虛擬目錄就要人為的手工創建應用程式名   
    
      VDir.SetInfo;   
  Q:如何得到WEB站點的IP和埠   
    
  A:此次以WEB站點為例   
    
  var   
      InstallPath:   String;   
      WebSite,   WebServer,   WebRoot:   Variant;   
      ar:   array   of   variant;   
  begin   
      try   
          WebSite   :=CreateOLEObject('IISNamespace');   
          WebSite   :=   WebSite.GetObject('IIsWebService',   'localhost/w3svc');   
          WebServer   :=   WebSite.GetObject('IIsWebServer',   '3');   
          ar   :=         webserver.ServerBindings;       //把IIS虛擬站點綁定的IP、埠、功能變數名稱的值放入數組   
          showmessage(ar[0]);   
    
        except   
        end;   
    
  更多的請大家查看MSDN中有關ADSI的頁面


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、 Comparable<T>: Comparable是類內部的比較器,用於創建類的時候實現此介面,同時實現比較方法;對於不能修改源碼的類則無法應用此方式進行比較排序等。 源碼為: 1 public interface Comparable<T> { 2 public int compareTo( ...
  • 這是一個NB的安全認證機制。 1、這是一個安全認證機制 2、可以防止黑客截獲到客戶端發送的請求消息,避免了黑客冒充客戶端向伺服器發送操作的請求。 原理與步驟: 1、客戶端與伺服器端都會放著一份驗證用的token欄位,這欄位無論通過什麼方式前提是不能被黑客提前拿到。 2、客戶端在本地把時間戳和toke ...
  • 亂碼 上節說到亂碼出現的主要原因,即在進行編碼轉換的時候,如果將原來的編碼識別錯了,併進行了轉換,就會發生亂碼,而且這時候無論怎麼切換查看編碼的方式,都是不行的。 我們來看一個這種錯誤轉換後的亂碼,還是用上節的例子,二進位是(16進位表示):C3 80 C3 8F C3 82 C3 AD,無論按哪種 ...
  • 在騷擾了PayPal的技術支持好幾天之後終於成功對接了PayPal支付,非常感謝PayPal的技術支持人員,沒有她估計一周都搞不定。記錄一下這個過程。 接到這個任務聯繫了PayPal的技術之後,第一件事就是向她要了一些文檔。PayPal提供了一個demo商店https://demo.paypal.c ...
  • 前言:當我們進行大的項目書寫的時候或者我們選擇維護程式的時候,想知道幾點幾時我們錄入的數據有bug是那麼我們就採用 》log4j記錄日誌的信息 一、日誌及其分類 1、軟體運行的過程中離不開日誌。日誌主要用來記錄系統運行過程中的一些重要操作信息,便於監視系統運行的情況,幫助用戶避免和發現可能出現的問題 ...
  • 1、接收用戶輸入: input:接收用戶輸入的是合法的python表達式,比如字元串。 raw_input:把所有的輸入當做原始數據(raw data)。 除非對input有特別的需要,否則儘可能使用raw_input函數。 2、長字元串和原始字元串 長字元串常利用'\'經行轉義,例如: 這句話會打 ...
  • 原文地址:http://blog.csdn.net/morewindows/article/details/7421759 使用多線程其實是非常容易的,下麵這個程式的主線程會創建了一個子線程並等待其運行完畢,子線程就輸出它的線程ID號然後輸出一句經典名言——Hello World。整個程式的代碼非常 ...
  • 概述 Java語言中,提供了一套數據集合框架,其中定義了一些諸如List、Set等抽象數據類型,每個抽象數據類型的各個具體實現,底層又採用了不同的實現方式,比如ArrayList和LinkedList。 除此之外,Java對於數據集合的遍歷,也提供了幾種不同的方式。開發人員必須要清楚的明白每一種遍歷 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...