ASP 3.0高級(jí)編程(11)
發(fā)表時(shí)間:2024-01-16 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]第四章 服務(wù)器進(jìn)程和ASP Server對(duì)象前面的章節(jié)已經(jīng)研究了ASP的一些內(nèi)置對(duì)象。重點(diǎn)介紹的對(duì)象有Request、Response、Session和Application對(duì)象。ASP中另一個(gè)比較主要的對(duì)象為Server對(duì)象。本章重點(diǎn)介紹這個(gè)對(duì)象的背景知識(shí)和使用方法。Server對(duì)象在...
第四章 服務(wù)器進(jìn)程和ASP Server對(duì)象
前面的章節(jié)已經(jīng)研究了ASP的一些內(nèi)置對(duì)象。重點(diǎn)介紹的對(duì)象有Request、Response、Session和Application對(duì)象。ASP中另一個(gè)比較主要的對(duì)象為Server對(duì)象。本章重點(diǎn)介紹這個(gè)對(duì)象的背景知識(shí)和使用方法。
Server對(duì)象在服務(wù)器端腳本中通過(guò)實(shí)例和使用其他外部對(duì)象和組件,提供了一種擴(kuò)展ASP頁(yè)的功能的方法。事實(shí)上,許多人認(rèn)為這個(gè)對(duì)象是ASP之所以能夠流行的主要因素。引入Server對(duì)象的意義很大,這意味著ASP不必提供人們所需要的所有屬性。它可調(diào)用其他應(yīng)用程序和組件完成指定工作。
這也恰好符合了構(gòu)建由獨(dú)立的對(duì)象組成的應(yīng)用程序的總體目標(biāo),而不是構(gòu)建通常見(jiàn)到的那種耗盡硬盤(pán)空間的“可做每件事情”的巨型程序。不僅僅是在計(jì)算機(jī)的世界中,整個(gè)世界正在朝著組件和“即插即用”概念方面發(fā)展。如今,當(dāng)汽車(chē)或電視機(jī)發(fā)生故障時(shí),技師或工程師很可能會(huì)拔出有問(wèn)題的部件并且插入一個(gè)新的部件,因此,汽車(chē)維護(hù)人員或電視機(jī)維修人員的工作也變成了面向?qū)ο蟮摹?br>然而,IIS同樣支持使用外部對(duì)象和與服務(wù)器環(huán)境進(jìn)行交互作用的許多傳統(tǒng)方法。這是一個(gè)特定的例外,這些方法并不是真正的ASP組成部分,但通常的確非常有用,并且通過(guò)Server對(duì)象的一些新特性已經(jīng)與ASP很好地進(jìn)行了集成。本章將簡(jiǎn)要地回顧這些傳統(tǒng)方法,然后詳細(xì)地介紹ASP Server對(duì)象。
本章的主要內(nèi)容為:
· 傳統(tǒng)的服務(wù)器端包含(SSI)指令的背景知識(shí)和使用方法。
· Server對(duì)象所要完成的任務(wù),以及與SSI的比較。
· 如何使用Server對(duì)象實(shí)例、外部組件和應(yīng)用程序。
· 如何使用Server對(duì)象執(zhí)行封裝的腳本或其他ASP頁(yè)面。
· 如何使用Server對(duì)象管理在腳本中出現(xiàn)的錯(cuò)誤。
· 如何使用Server對(duì)象完成與HTML或HTTP兼容的格式轉(zhuǎn)換。
Server對(duì)象是ASP頁(yè)中的錯(cuò)誤處理過(guò)程的一部分,在IIS 5.0和ASP 3.0中是新的內(nèi)容。本章介紹該對(duì)象是如何工作的。因?yàn)橛袉为?dú)的一章(第7章)專門(mén)討論有關(guān)調(diào)試和錯(cuò)誤處理方面的所有問(wèn)題。所以本章只簡(jiǎn)要地討論錯(cuò)誤處理方法,并且僅限于Server對(duì)象直接涉及的過(guò)程。
4.1 動(dòng)態(tài)頁(yè)中服務(wù)器端的處理
就服務(wù)器端處理而言,ASP是產(chǎn)生動(dòng)態(tài)Web網(wǎng)頁(yè)的一種相對(duì)較新的技術(shù)。動(dòng)態(tài)頁(yè)意味著什么呢?先暫時(shí)不考慮客戶端相關(guān)功能上的進(jìn)展,也不討論客戶端腳本、Java Applet、動(dòng)態(tài)HTML或ActiveX控件等內(nèi)容。這里的動(dòng)態(tài)頁(yè)是專指服務(wù)器響應(yīng)客戶端請(qǐng)求產(chǎn)生的頁(yè)面,并且根據(jù)情況每次產(chǎn)生的頁(yè)面可能是不同的。
舉個(gè)簡(jiǎn)單的例子,創(chuàng)建一個(gè)只包含當(dāng)前日期和時(shí)間的頁(yè)面。每次請(qǐng)求該頁(yè)面時(shí)將顯示一個(gè)不同的值,因?yàn)槿掌诤蜁r(shí)間取決于服務(wù)器的時(shí)鐘,或取決于提供日期和時(shí)間的一個(gè)資源(例如一個(gè)獨(dú)立的服務(wù)器或來(lái)自于互聯(lián)網(wǎng)上一個(gè)標(biāo)準(zhǔn)時(shí)鐘)。當(dāng)然,實(shí)際上動(dòng)態(tài)頁(yè)要比這復(fù)雜得多,也許顯示數(shù)據(jù)庫(kù)記錄的當(dāng)前值或者郵件服務(wù)器上等待著的郵件消息的摘要。重要的是服務(wù)器不僅閱讀一個(gè)無(wú)格式的HTML頁(yè)面、或磁盤(pán)上的文本文件以及把它們發(fā)送給客戶,而且,必須完成一些工作來(lái)創(chuàng)建該頁(yè)面。
Internet服務(wù)器應(yīng)用編程接口
第1章介紹了創(chuàng)建動(dòng)態(tài)頁(yè)的一些方法。傳統(tǒng)的技術(shù)是使用與Web服務(wù)器的一個(gè)接口,它被稱為Internet服務(wù)器應(yīng)用編程接口(Internet Server Application Programming Interface,ISAPI)。
ISAPI可用于執(zhí)行其他的應(yīng)用程序,這些應(yīng)用程序通過(guò)C語(yǔ)言風(fēng)格的stdin和stdout數(shù)據(jù)流函數(shù)來(lái)讀取客戶端請(qǐng)求的值并創(chuàng)建Web服務(wù)器的響應(yīng)。ISAPI應(yīng)用程序所必須做的全部事情就是編寫(xiě)相應(yīng)結(jié)果頁(yè)面的文本和HTML,并通過(guò)stdout函數(shù)輸出到Web服務(wù)器。事實(shí)上ASP DLL內(nèi)部真正做的事情是更面向?qū)ο蟮摹?br> IIS自開(kāi)始就運(yùn)行ISAPI的應(yīng)用程序和腳本解釋器。它提供一個(gè)特殊的解釋器動(dòng)態(tài)鏈接庫(kù),給出訪問(wèn)服務(wù)器的請(qǐng)求和響應(yīng)的另一種方法,盡管受到一定的限制。它通過(guò)服務(wù)器端包含指令實(shí)現(xiàn),之所以這樣說(shuō),是因?yàn)樗鼈兪窃诜⻊?wù)器上執(zhí)行的,并且結(jié)果包含在傳送給客戶端的響應(yīng)中。這個(gè)特性在IIS中是通過(guò)一個(gè)名為ssinc.dll的動(dòng)態(tài)鏈接庫(kù)實(shí)現(xiàn)的。缺省情況下,IIS把文件擴(kuò)展名為.shtml、.shtm或.stm的任意頁(yè)面都映射到這個(gè)動(dòng)態(tài)鏈接庫(kù)。打開(kāi)默認(rèn)Web站點(diǎn)的Properties對(duì)話框,在Application Setting中單擊Configuration按鈕,可以看到這種映射,如圖4-1所示:
圖4-1 Application Configuration對(duì)話框
這樣,帶有這些被映射的文件擴(kuò)展名的頁(yè)面將被傳送給ssinc.dll進(jìn)行處理。因此,執(zhí)行頁(yè)面中所有的服務(wù)器端包含語(yǔ)句,結(jié)果(如有的話)插入到服務(wù)器的響應(yīng)中,即插入到客戶端接收到的頁(yè)面中。
因?yàn)檫@些文件是映射到ssinc.dll文件而不是映射到ASP動(dòng)態(tài)鏈接庫(kù)(asp.dll)的,所以在這些頁(yè)面中的所有ASP代碼將被忽略并且按照原有狀態(tài)傳送給客戶端,客戶端將能夠看到這些腳本。然而,在ASP 3.0版本中有一個(gè)避免這種情況的方法,稍后在討論Server對(duì)象的Execute和Transfer方法時(shí),研究這個(gè)方法。
4.2 服務(wù)器端的包含指令
利用服務(wù)器端的包含(SSI)語(yǔ)句(或者指令)能夠做些什么呢?實(shí)際上不多,除非打算創(chuàng)建在Web服務(wù)器上運(yùn)行的可執(zhí)行文件,并通過(guò)stdin和stdout函數(shù)訪問(wèn)ISAPI。這就意味能夠用C、C++或其他語(yǔ)言(如Delphi)等編寫(xiě)它們,但VB并不適合。此外,使用SSI指令能夠做的事情可達(dá)到與在ASP中實(shí)現(xiàn)同樣好的效果。許多方法中,IIS的SSI特性對(duì)使用這些特性的原有的Web網(wǎng)站和Web頁(yè)面具有向下兼容性。
然而,可能有時(shí)會(huì)希望在站點(diǎn)上使用SSI而不是ASP。在IIS 5.0中,服務(wù)器端的包含指令能夠比以前更加容易地集成到一個(gè)遠(yuǎn)程站點(diǎn)上的ASP頁(yè),它們是有用的,特別是作為執(zhí)行操作系統(tǒng)命令或原有的CGI應(yīng)用程序的一種方式。后面將會(huì)非常詳細(xì)地介紹可用的指令。
#include指令是這些指令之一,它已經(jīng)與ASP一起使用了一段時(shí)間了,同樣也在SSI頁(yè)中使用。事實(shí)上,這已經(jīng)對(duì)那些不具備傳統(tǒng)的Web開(kāi)發(fā)背景的ASP開(kāi)發(fā)人員帶來(lái)了很多混亂。
4.2.1 不可思議的ASP #include指令
在一個(gè)ASP頁(yè)中,可以使用#include指令把另一個(gè)文件的內(nèi)容插入到當(dāng)前的頁(yè)面中:
<!-- #include file=”/scripts/usefulbits.inc” -->
這條指令讀取該文件的全部?jī)?nèi)容并插入到該頁(yè)中,替代<!-- #include.. -->行。這是一種非常有用的插入HTML段落的技術(shù),可反復(fù)使用。也常用該指令來(lái)插入代碼段。例如,如果有一個(gè)包含幾個(gè)腳本函數(shù)(或者只是單行腳本代碼)的文件同時(shí)在幾個(gè)頁(yè)面中使用,則可以使用#include指令將其插入到需要它的每個(gè)頁(yè)中。
通過(guò)把腳本和內(nèi)容分開(kāi)的方法,給頁(yè)面提供了一個(gè)組成層次。這意味著如果對(duì)腳本進(jìn)行了修改,在客戶端再次打開(kāi)該頁(yè)面時(shí),腳本的修改情況自動(dòng)地反映到使用包含文件的每個(gè)頁(yè)面中。包含文件也是一種插入服務(wù)器特定的信息的簡(jiǎn)單方法,所以把站點(diǎn)轉(zhuǎn)移到另一個(gè)服務(wù)器不意味著必須編輯涉及原來(lái)服務(wù)器的所有頁(yè)面(明顯的例子是數(shù)據(jù)庫(kù)連接字符串或指定一個(gè)完整的URL或服務(wù)器名字的鏈接)。這可以極大地減少維護(hù)費(fèi)用。
例如,可以把下面的內(nèi)容作為一個(gè)包含文件,命名為connect.inc:
<%
strConnect = “SERVER=myserver;DATABASE=mydb;DRIVER={SQL Server};” _
& “UID=username;PWD=secretpassword”
%>
然后可以在任何頁(yè)中使用這個(gè)文件:
<!-- #include file=”path_to_file\connect.inc” -->
<%
…
strTheConnectionString = strConnect ‘From include file
…
%>
使用包含文件的另一種情況是有些內(nèi)容需要按指定的時(shí)間間隔進(jìn)行修改。例如,在Wrox Web Deverloper站點(diǎn)上顯示書(shū)目列表的網(wǎng)頁(yè),它包含了一個(gè)表,其中提供了所有的封面、書(shū)名和一些按鈕,如圖4-2所示:
圖4-2 顯示書(shū)目列表的網(wǎng)頁(yè)
這個(gè)表的HTML和文本保留在一個(gè)單獨(dú)的文件中,該文件通過(guò)一條單獨(dú)的#include語(yǔ)句包含在主頁(yè)中。每次一本新書(shū)加入到該網(wǎng)頁(yè)所基于的數(shù)據(jù)庫(kù)中時(shí),那個(gè)包含文本文件根據(jù)該數(shù)據(jù)庫(kù)的情況重新創(chuàng)建,并作為一個(gè)文本文件寫(xiě)到磁盤(pán)上。
這個(gè)技術(shù)大大減少了在Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器上的工作量,對(duì)該站點(diǎn)的訪問(wèn)者實(shí)現(xiàn)較快地響應(yīng)。
1. 包含文件和ASP
在ASP網(wǎng)頁(yè)(即帶有.asp文件擴(kuò)展名的網(wǎng)頁(yè))中使用的#include指令不能像一條真正的SSI指令那樣進(jìn)行處理,它僅是一條ASP能夠識(shí)別并進(jìn)行語(yǔ)法分析的特別指令。ssinc.dll直接用于執(zhí)行SSI #include指令。然而這個(gè)由相應(yīng)文件的內(nèi)容替代#include指令的頁(yè)面由ASP解釋。
這意味著ASP對(duì)#include指令所進(jìn)行的操作不實(shí)施控制。例如,可以試驗(yàn)以下代碼:
<%
‘This will *not* work
strIncludeURL = Request.Form(“FileName”)
%>
…
<!-- #include file=”<% = strIncludeURL %>” -->
ssinc.dll將查找名為<% = strIncludeURL %>的文件,并且不可能找到,因此這段代碼不會(huì)工作。
2. 包含文件的安全性
如果沒(méi)有包含可執(zhí)行腳本,在Web服務(wù)器上的ASP網(wǎng)頁(yè)不能通過(guò)IIS的Web服務(wù)程序下載到一個(gè)客戶端。但是,有人已經(jīng)發(fā)現(xiàn)了偶然的安全性漏洞,比如著名的$DATA問(wèn)題,所有在NTFS格式化的磁盤(pán)上保留Web內(nèi)容的Web服務(wù)器都存在相應(yīng)的問(wèn)題。在IIS 5.0中這個(gè)問(wèn)題已經(jīng)得到解決。
$DATA問(wèn)題的出現(xiàn)是因?yàn)樵赪indows NTFS驅(qū)動(dòng)器上的所有文件都有一個(gè)缺省的“值”,即是該文件的內(nèi)容,并且通過(guò)文件名加后綴“::$DATA”來(lái)指示。將其增加到一個(gè)ASP網(wǎng)頁(yè)的URL的末尾將打亂IIS中的腳本映射關(guān)系,且允許服務(wù)器不對(duì)其中包含的腳本進(jìn)行處理而不載該頁(yè)面。對(duì)IIS 4.0和早期版本,有一個(gè)方法可以解決這個(gè)問(wèn)題,或者可以只是增加幾個(gè)映射來(lái)強(qiáng)制IIS正常地執(zhí)行該網(wǎng)頁(yè):即增加對(duì)“.asp::$DATA”和“.asa::$DATA”的映射,兩者都指向asp.dll文件。
包含文件的擴(kuò)展各一般是.inc或.txt。如果在站點(diǎn)上發(fā)現(xiàn)一個(gè)包含文件的路徑和文件名,可通過(guò)把包含文件的URL鍵入到瀏覽器的地址欄中,下載該包含文件,而不會(huì)把其作為ASP網(wǎng)頁(yè)的一部分來(lái)執(zhí)行。為防止出現(xiàn)這樣情況,特別是在文件包含有敏感信息(諸如一個(gè)數(shù)據(jù)庫(kù)鏈接字符串)的情況下,可能希望包含文件的擴(kuò)展名為.asp。在這種情況下,如果試圖下載一個(gè)包含文件,它將首先被傳送到ASP,ASP將執(zhí)行該文件中的所有腳本代碼,并只發(fā)送出結(jié)果。如在包含文件中定義的一個(gè)鏈接字符串如下:
<%
strConnect = “SERVER=myserver;DATABASE=mydb;DRIVER={SQL Server};” _
& “UID=username;PWD=secretpassword”
Response.Write vbCrlf ‘Output a carriage return character
%>
客戶端只能接受到單個(gè)回車(chē)符而不是腳本代碼,因?yàn)樵撐募呀?jīng)被ASP在服務(wù)器上執(zhí)行了。如果不包含回車(chē)符,瀏覽器將掛起并等待一個(gè)響應(yīng)(這并不是我們的問(wèn)題,因?yàn)槲覀兇_實(shí)不打算允許用戶直接訪問(wèn)這個(gè)文件)。
IIS 5.0和Windows的訪問(wèn)控制列表
在IIS 5.0中,Microsoft已經(jīng)改變了Web服務(wù)器和操作系統(tǒng)訪問(wèn)服務(wù)器端包含文件的方法。
在IIS早期版本中,當(dāng)ssinc.dll載入一個(gè)虛擬URL(即使用VIRTUAL = “filename”而不是FILE = “filename”)定位的一個(gè)包含文件時(shí),將繞過(guò)Windows本身的安全性檢查并忽略該文件及所存儲(chǔ)的目錄上的任何安全性設(shè)置,F(xiàn)在,在IIS 5.0中,運(yùn)行當(dāng)前ASP或SSI頁(yè)面的帳號(hào)必須與對(duì)該文件和目錄在Windows訪問(wèn)控制列表(ACL)中設(shè)置的權(quán)限相一致。如果不一致,該SSI指令運(yùn)行將失敗。
4.2.2 服務(wù)器端包含指令概要
除了已經(jīng)討論過(guò)的#include語(yǔ)句以外,還有IIS支持的五條服務(wù)器端包含指令(記住,除#include以外,這些語(yǔ)句不能在ASP網(wǎng)頁(yè)中執(zhí)行)。這些服務(wù)器端包含指令及說(shuō)明如表4-1所示:
表4-1 服務(wù)器端包含指令及說(shuō)明
指 令
說(shuō) 明
#include
把一個(gè)指定文件的內(nèi)容插入到將被發(fā)送給客戶端的響應(yīng)流中并代替該指令。例如:
<!-- #include FILE = “usefulbits.inc” -->
這條指令把名為usefulbits.inc文件的內(nèi)容插入到響應(yīng)中。這個(gè)文件可以由一個(gè)相對(duì)或全路徑與文件名的組合描述,如FILE=”..\scripts\myscr.inc”。通過(guò)使用VIRTUAL屬性,可使用一個(gè)虛擬的相對(duì)或絕對(duì)路徑來(lái)描述它,例如:
<!-- #include VIRTUAL=”/mysite/ussefulbits.inc” -->
<!-- #include VIRTUAL=”../../thisbit/usefulbits.inc” -->
#config
說(shuō)明在其后的指令中將用于數(shù)據(jù)、時(shí)間和文件大小以及返回給客戶端的一般性的SSI錯(cuò)誤信息的文本的格式。例如:
<!-- #config ERRMSG=”SSI Processing Error” -->
設(shè)置SSI錯(cuò)誤信息內(nèi)容為’SSI Processing Error’。
<!-- #config TIMEFMT=”%A,%B %d %Y %H:%M:%S” -->
設(shè)置由其后的SSI指令返回的日期和時(shí)間的格式。這個(gè)例子設(shè)置一個(gè)格式風(fēng)格:Saturday, August 14 1999 10:34:50?梢杂糜诟袷阶址臉(biāo)志的列表在附錄C中給出。
<!-- #config SIZEFMT=”BYTES” -->
設(shè)置由其后的IIS指令返回的文件大小的單位。這個(gè)例子設(shè)置單位為字節(jié)。對(duì)SIZEFMT可供選擇的值是“ABBREV”,指明計(jì)算值將千字節(jié)(KB)返回文件的大小
#echo
把一個(gè)HTTP環(huán)境變量的值插入到發(fā)送給客戶端的響應(yīng)流中并替換該指令。例如:
<!-- #echo VAR=”SERVER_NAME” -->
寫(xiě)出正在執(zhí)行指令到該網(wǎng)頁(yè)的服務(wù)器的名字
#exec
執(zhí)行一個(gè)程序或一個(gè)服務(wù)器外殼命令,例如:
<!-- #exec CGI=”/scripts/myapp.exe?value1=this&value2=that -->
執(zhí)行名為myapp.exe的CGI程序,允許傳遞查詢字符串,程序在單獨(dú)內(nèi)存中執(zhí)行。
<!-- #exec CMD=”cmd.exe/c iisreset/stop” -->
啟動(dòng)特定操作系統(tǒng)命令解釋器(cmd.exe)并執(zhí)行命令iisreset/stop。/c表示當(dāng)命令結(jié)束時(shí),命令解釋器也結(jié)束。使用CMD要添加下列注冊(cè)表項(xiàng):
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/w3SVC
/Parameters/SSIEnableCmdDirective
設(shè)置值為1,并重啟動(dòng)WWW服務(wù),就允許CMD標(biāo)志用于#exec指令中。值為0,則禁止使用,并防止未驗(yàn)證的使用
#flastmod
把一個(gè)指定的文件上一次修改的日期和時(shí)間插入到發(fā)送給客戶端的響應(yīng)流中并代替該指令。
例如:
<!-- #flastmod FILE=”Default.asp” -->
像#include指令一樣,也可以使用虛擬路徑對(duì)該文件進(jìn)行定義,如:
VIRTUAL=”/mysite/usefulbits.inc”
或
VIRTUAL=”../thisbit/usefulbits.inc”
#fsize
把一個(gè)指定的文件的大小插入到發(fā)送給客戶端的響應(yīng)流中并代替該指令。例如:
<!-- #fsize FILE=”Default.asp” -->
象#include指令一樣,也可以使用虛擬路徑對(duì)該文件進(jìn)行定義,如:
VIRTUAL=”/mysite/usefulbits.inc”
或
VIRTUAL=”../thisbit/usefulbits.inc”
1. IISRESET實(shí)用程序
iisreset.exe是由IIS 5.0提供的一個(gè)新的實(shí)用程序。作為一個(gè)命令行的實(shí)用程序,如果用于執(zhí)行該實(shí)用程序的帳號(hào)具有管理員權(quán)限,它對(duì)于控制運(yùn)行在本地或一個(gè)網(wǎng)絡(luò)計(jì)算機(jī)上的Internet聯(lián)網(wǎng)服務(wù)器是非常有用的。它可用于以正確的順序停止或啟動(dòng)所有的服務(wù)、顯示服務(wù)的狀態(tài)、重新引導(dǎo)服務(wù)器以及允許或禁止服務(wù)的管理。例如:
iisreset /RESTART /TIMEOUT:30 /REBOOTONERROR
這將以正確的順序停止和重新啟動(dòng)所有Internet服務(wù)。如果一種服務(wù)在指定的超時(shí)周期(30秒)內(nèi)未能停止或重新啟動(dòng),服務(wù)器將重新引導(dǎo)?梢杂迷贑MD類型的#echo SSI指令中的一些開(kāi)關(guān),使該頁(yè)面不能進(jìn)行匿名訪問(wèn)并且要求用戶提供在目標(biāo)服務(wù)器上具有管理員權(quán)限的有效帳號(hào)的詳細(xì)情況。這個(gè)實(shí)用程序的完整描述和可用的命令開(kāi)關(guān)在附錄C中。
2. NET STOP和NET START命令
如果用來(lái)執(zhí)行實(shí)用程序net.exe的帳號(hào)具有管理員權(quán)限,它可以用來(lái)管理服務(wù)器上運(yùn)行的任何服務(wù)(即可以是本地的也可以是來(lái)自其他的一個(gè)計(jì)算機(jī))。雖然不提倡把該程序用于Internet服務(wù)(如WWW或FTP服務(wù)),但其停止和啟動(dòng)其他服務(wù)的功能是非常有用的。事實(shí)上,net命令同樣可以用于一系列的其他網(wǎng)絡(luò)相關(guān)命令。
語(yǔ)法是:
net [start stop] service_name
例如,可以用命令net stop cisvc和net start cisvc來(lái)停止和啟動(dòng)Miscrosoft Indexing Service。可以用CMD類型的#echo SSI指令使該頁(yè)面不能進(jìn)行匿名訪問(wèn)并要求用戶提供在目標(biāo)服務(wù)器上的具有管理員權(quán)限的有效帳號(hào)的詳細(xì)情況。稍后將看到一個(gè)這樣的例子。
在windows 2000幫助文件中可以找到net命令的所有選項(xiàng)和開(kāi)關(guān)的一個(gè)完整列表。從Start菜單中選擇Help項(xiàng),在Help窗口的Index頁(yè)查找“netcommands”。