ASP.NET网站如何tomcat 修改虚拟目录录

說明以下的Demo 環境
OS:Windows 7 64bit
DB:SQL Server 2008 (和IIS在同一台電腦上)
1. 要在Windows7上架ASP.net網站前要先啟動安裝IIS
控制台&程式和功能&開啟或關閉Windows功能
然後按「確定」
2.&使用Windows系統管理員的權限,安裝.net framework(本Demo待會要架.net4開發的網站,所以以.net framework4為例)
※如果1、2步驟安裝相反的話,請這樣做
打開『命令提示視窗』,到『C:\Windows\Microsoft.NET\Framework64\v2.0.50727』和『C:\Windows\Microsoft.NET\Framework64\v4.0.30319』底下,
輸入『aspnet_regiis -i』向IIS伺服器註冊.net framework
(如果不確定當初1、2步驟安裝順序的話,也可以執行以上指令)
3. 因為要讓外部連到網站
所以到控制台&Windows防火牆&進階設定
左方「輸入規則」把80&port打開(實務上這裡指的是AP Server)
因為實務上,AP Server架網站,DB Server架SQL Server
所以接下來假設網站要存取另一台電腦上的SQL Server
所以DB Server的Port(預設1433)也要打開
請在DB Server的電腦進到Windows防火牆&右方「新增規則」
選「連接埠」
輸入「1433」
「允許連線」
規則名稱請自行命名
如此Windows防火牆的設定完畢。
4. 接著要再設定SQL Server組態,讓它可以允許網站程式連接SQL Server
(實務上,這裡是DB Server的操作)
確保以下SQL Server和SQL Server Browser都有執行
Shared memory、TCP/IP、具名管道都有啟用
SQL Server網路組態的TCP/IP&內容
IP位址&TCP動態通訊埠清空&TCP通設埠設1433後按「確定」
3和4的步驟完成後,網站和SQL Server應該就可以溝通了.
5. 架設ASP.net 站台
系統管理工具&IIS管理員&新增網站
※因為我曾經遇過客戶提供的環境把系統管理工具隱藏起來(自訂開始功能表也找不到)的狀況,所以再提供一個找到IIS管理員的方法:
我的電腦&右鍵&管理&服務與應用程式&IIS管理員
(本Demo未輸入主機名稱),按下「確定」
※如果一台電腦上要架設多個站台的話,請確保每個站台的連接埠不一樣或每個站台的主機名稱(DomainName)不一樣,網站才執行得起來
接下來要設定「預設文件」,目的是為了當使用者輸入一個DomainName的URL或輸入一個目錄名稱,預設要導向的網頁
※「預設文件」不設定沒關係,但就要啟用「瀏覽目錄」的功能(但不建議這樣做,因為會讓使用者知道你的網站架構),所以以下Demo有把「瀏覽目錄」功能「停用」
左鍵Click進入
左鍵Click進入
要測試網站有沒有架設成功,可以左鍵點選站台名稱後&「瀏覽*:80(http)」
有看到畫面代表成功了(以下Hello World的字串為從資料庫撈出來的字串)
本Demo剛剛沒有輸入DomainName,所以是(或自己電腦的IP位址)
如果剛剛有輸入DomainName的話,可以直接在瀏覽器上輸入DomainName試試看網站是否成功被執行
以下附上該網站的Web.config設定(因為IIS有設定預設文件,所以defaultDocument區塊會被自動追加修改)
&?xml&version=&1.0&&encoding=&UTF-8&?&
&configuration&
&&&connectionStrings&
&&&&&!--資料庫的連線字串,Data Source為DB Server的IP位址--&
&&&&&!--Initial Catalog為預設資料庫--&
&&&&&!--Uid和Pwd請分別輸入SQL Server驗證登入的帳號和密碼--&
&&&&&add&name=&connStr&&connectionString=&Data Source=192.168.1.9;Initial Catalog=NUid=Pwd=Max pool Size=300&&providerName=&System.Data.SqlClient&&/&
&&&/connectionStrings&
&&&&&system.web&
&&&&&&&&&compilation&debug=&false&&targetFramework=&4.0&&/&
&&&&&/system.web&
&&&&&system.webServer&
&&&&&&&&&defaultDocument&
&&&&&&&&&&&&&files&
&&&&&&&&&&&&&&&&&add&value=&index.aspx&&/&
&&&&&&&&&&&&&/files&
&&&&&&&&&/defaultDocument&
&&&&&/system.webServer&
&/configuration&
如果要修改該網站的DomainName的話,請到該站台的「繫結」
如果要修改該網站使用的應用程式集區:
以上上圖ASP.net v4.0為整合式
ASP.net v4.0 Classic為傳統式
如果發生錯誤
偵測出 ASP.NET
設定沒有套用到整合式 Managed
此為應用程式集區整合式和傳統式的問題,請參考此篇的解法:
※請一定要注意,.net 4開發的網站就應該跑在.net 4版本的應用程式集區,非.net 4開發的網站就不要用ASP.net v4.0和ASP.net v4.0 Classic應用程式集區
否則會發生Server ApplicationUnavailable&或&伺服器應用程式無法使用的錯誤
解法和說明請參考此篇的常見問題4:
以上,正式部署網站時,本人大概就是如此架設
如果是本機練習的話,因為不可能有DomainName,要用不同的連接埠進到不同的網站要記Port號碼又麻煩
所以練習測試環境的話,可以這樣架設多個「應用程式」
1. 把「預設站台」啟動
2. 修改「預設站台」的應用程式集區
3. 新增應用程式
※虛擬目錄只能執行靜態網頁,應用程式可以執行動態網頁,如果不小心架成虛擬目錄的話,待會也可以對著虛擬目錄右鍵&轉換成應用程式
4 左鍵應用程式&測試與執行
可以照著此方法,新增多個應用程式,URL就會是http://本機電腦的IP位址/應用程式名稱
之後的各項設定跟站台類似,就不再累述,但切記站台所做的變更,底下的「應用程式」會跟著繼承
※最後印象中如果64位元的環境會執行到32位元應用程式的話
請到應用程式集區設定
針對要上傳檔案的目錄要新增寫入的權限
權限名稱請參考:(【IIS AppPool\應用程式集區名稱】)
如果ASP.NET 想把檔案寫入到網路芳鄰的分享目錄的話,請參考:
(只是我只完成1、2、3、6的步驟並把File目錄開成「共用」就行了)
※& 追記:IIS應該啟用的功能設定
&啟用 IIS7 (含 ASP.NET 與 WCF HTTP 啟動、靜態內容、IIS 管理主控台與選用的 CGI)。
1.&&&&在 [開始] 功能表中,依序選取 [控制台] | [程式] | [程式和功能]。
2.&&&&按一下 [開啟或關閉 Windows 功能]。
3.&&&&在 Microsoft .NET Framework 3.5 下,選取 [Windows Communication Foundation HTTP 啟動]。
4.&&&&在 Internet Information Services 底下,展開 [全球資訊網服務] 和 [應用程式開發功能],然後選取 [ASP.NET] 和 [CGI]。
5.&&&&在 Internet Information Services 底下,展開 [全球資訊網服務] 和 [一般 HTTP 功能],然後選取 [靜態內容]。
6.&&&&在 [網際網路資訊服務] 下,展開 [Web 管理工具],然後選取 [IIS 管理主控台]。
7.&&&&安裝選取的功能。
Windows Server 2008
1.&&&&在 [開始] 功能表中,依序選擇 [程式集]、[系統管理工具] 和 [伺服器管理員]。
2.&&&&在 [伺服器管理員] 中 [功能摘要] 底下,選取 [新增功能]。
3.&&&&在 [新增功能] 對話方塊中 [.NET Framework 3.0 功能] 底下,選取 [.NET Framework 3.0]。在 [WCF 啟動] 底下,選取 [HTTP 啟動]。按 [下一步] 按鈕進行安裝。
4.&&&&在 [伺服器管理員] 中 [角色摘要] 底下,確認 [網頁伺服器 (IIS)] 有出現在可用角色的清單中。如果沒有出現,請按一下 [新增角色],安裝 Internet Information Services。
5.&&&&在 [伺服器管理員] 中 [角色摘要] 底下,按一下 [網頁伺服器 (IIS)]。
6.&&&&在 [網頁伺服器 (IIS)] 管理視窗中,按一下 [新增角色服務]。
7.&&&&在 [新增角色服務] 對話方塊中,依序展開 [網頁伺服器] 和 [應用程式開發],然後選取 [ASP.NET] 和 [CGI]。
8.&&&&在 [新增角色服務] 對話方塊中,依序展開 [網頁伺服器] 和 [一般 HTTP 功能],選取 [靜態內容],然後按 [下一步] 按鈕進行安裝。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:113002次
积分:1962
积分:1962
排名:第8943名
原创:72篇
转载:77篇
评论:10条
(1)(1)(1)(3)(3)(1)(7)(6)(3)(4)(14)(12)(1)(1)(5)(4)(7)(2)(12)(12)(11)(4)(12)(17)(1)(1)(1)(1)(1)String appPoolName = &MyApp2&;
DirectoryE
DirectoryEntry apppools = new DirectoryEntry(&IIS://localhost/W3SVC/AppPools&);
newpool = apppools.Children.Add(appPoolName,&IIsApplicationPool&);
newpool.Properties[&AppPoolIdentityType&][0] = &2&;
newpool.Properties[&IdleTimeout&][0] = 0;
newpool.Properties[&MaxProcesses&][0] = 5;
mitChanges();
//创建网站
DirectoryEntry Service = new DirectoryEntry(&IIS://localhost/W3SVC&);
DirectoryEntry S
int i = 0;
IEnumerator ie = Service.Children.GetEnumerator();
while (ie.MoveNext())
Server = (DirectoryEntry)ie.C
if (Server.SchemaClassName == &IIsWebServer&)
if (Convert.ToInt32(Server.Name) & i)
i = Convert.ToInt32(Server.Name);
Server = Service.Children.Add(i.ToString(), &IIsWebServer&);
Server.Properties[&ServerBindings&].Value = &:8551:&;
Server.Properties[&ServerComment&][0] = &测试网站&;
DirectoryEntry root = Server.Children.Add(&Root&, &IIsWebVirtualDir&);
root.Properties[&path&][0] = @&C:\b\xx&;
mitChanges();
mitChanges();
mitChanges();
//这里应该就是添加应用程序池的。。不知道这里不么改
object[] param = { 0, appPoolName, true };
root.Invoke(&AppCreate3&, param);
Server.Invoke(&start&, new object[0]);
然后现在已经能够设置网站的应用程序池为:“MyApp2”但现问题为:1:但是他的“执行权限”为“无”!如何设置为“纯脚本”2:他的“应用程序名”如何设置?我给添加 &
Server.Properties[&AppFriendlyName&][0] = &我的测试网站&; &
没有用3:在我的应用程序池下面的“MyApp2”显示当前这个网站的描述为“Root”怎么改显示为“我的测试网站”,也就是我那个网站的“应用程序名”相同谢谢------解决方案--------------------
Server = Service.Children.Add(i.ToString(), &IIsWebServer&);Server.Properties[&ServerBindings&].Value = &:8551:&;Server.Properties[&ServerComment&][0] = &测试网站&;mitChanges();DirectoryEntry root = Server.Children.Add(&Root&, &IIsWebVirtualDir&);root.Properties[&Path&][0] = @&C:\b\xx&;root.Properties[&AccessFlags&][0] = MD_ACCESS_READ | MD_ACCESS_SCRIPT;root.Properties[&ScriptMaps&].Value = ScriptMapsLroot.Properties[&AspEnableParentPaths&][0] =root.Properties[&AppRoot&][0] = &LM/W3SVC/& + i + &/Root&;root.Invoke(&AppCreate&, true);mitChanges();//注意:AppFriendlyName必须放在root.Invoke(&AppCreate&, true);mitChanges();之后。root.Properties[&AppFriendlyName&][0] = &我的测试网站&;mitChanges();object[] param = { 0, appPoolName, true };root.Invoke(&AppCreate3&, param);Server.Invoke(&start&, new object[0]);mitChanges();完整的测试代码C# code
string ScriptMaps = @&.asp,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE
.cer,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE
.cdx,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE
.asa,C:\WINDOWS\system32\inetsrv\asp.dll,5,GET,HEAD,POST,TRACE
.idc,C:\WINDOWS\system32\inetsrv\httpodbc.dll,5,GET,POST
.shtm,C:\WINDOWS\system32\inetsrv\ssinc.dll,5,GET,POST
.shtml,C:\WINDOWS\system32\inetsrv\ssinc.dll,5,GET,POST
.stm,C:\WINDOWS\system32\inetsrv\ssinc.dll,5,GET,POST
.asax,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.ascx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.ashx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.asmx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.aspx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.axd,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.vsdisco,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.rem,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.soap,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.config,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.cs,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.csproj,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.vb,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.vbproj,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.webinfo,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.licx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.resx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.resources,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.xoml,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.rules,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.master,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.skin,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.compiled,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.browser,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.mdb,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.jsl,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.vjsproj,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.sitemap,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.msgx,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.ad,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.dd,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.ldd,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.sd,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.cd,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.adprototype,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.lddprototype,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.sdm,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.sdmDocument,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.ldb,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.svc,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,1,GET,HEAD,POST,DEBUG
.mdf,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.ldf,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.java,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.exclude,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG
.refresh,C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll,5,GET,HEAD,POST,DEBUG&;
String[] ScriptMapsList = System.Text.RegularExpressions.Regex.Split(ScriptMaps, &\r\n&);
///注意:这里没有进行进行端口存在的检查
// Access Flags
const int MD_ACCESS_READ = 0x; //Allow read access.
const int MD_ACCESS_SCRIPT = 0x; // Allow script execution.
String appPoolName = &MyApp2&;
DirectoryE
DirectoryEntry apppools = new DirectoryEntry(&IIS://localhost/W3SVC/AppPools&);
newpool = apppools.Children.Add(appPoolName, &IIsApplicationPool&);
newpool.Properties[&AppPoolIdentityType&][0] = &2&;
newpool.Properties[&IdleTimeout&][0] = 0;
newpool.Properties[&MaxProcesses&][0] = 5;
mitChanges();
//创建网站
DirectoryEntry Service = new DirectoryEntry(&IIS://localhost/W3SVC&);
DirectoryEntry S
int i = 0;
IEnumerator ie = Service.Children.GetEnumerator();
while (ie.MoveNext())
Server = (DirectoryEntry)ie.C
if (Server.SchemaClassName == &IIsWebServer&)
if (Convert.ToInt32(Server.Name) & i)
i = Convert.ToInt32(Server.Name);
Server = Service.Children.Add(i.ToString(), &IIsWebServer&);
Server.Properties[&ServerBindings&].Value = &:8551:&;
Server.Properties[&ServerComment&][0] = &测试网站&;
mitChanges();
DirectoryEntry root = Server.Children.Add(&Root&, &IIsWebVirtualDir&);
root.Properties[&Path&][0] = @&C:\b\xx&;
root.Properties[&AccessFlags&][0] = MD_ACCESS_READ | MD_ACCESS_SCRIPT;
root.Properties[&ScriptMaps&].Value = ScriptMapsL
root.Properties[&AspEnableParentPaths&][0] =
root.Properties[&AppRoot&][0] = &LM/W3SVC/& + i + &/Root&;
root.Invoke(&AppCreate&, true);
mitChanges();
//注意:AppFriendlyName必须放在root.Invoke(&AppCreate&, true);mitChanges();之后。
root.Properties[&AppFriendlyName&][0] = &我的测试网站&;
mitChanges();
object[] param = { 0, appPoolName, true };
root.Invoke(&AppCreate3&, param);
Server.Invoke(&start&, new object[0]);
mitChanges();(本文来自互联网,不代表搜站(/)的观点和立场)编辑推荐最近更新 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
ASP.NET动态网站设计与实现——以一个真实运行的网站为案例 教学课件 ppt 作者 丁桂芝.
下载积分:500
内容提示:
文档格式:PPT|
浏览次数:2|
上传日期: 00:54:41|
文档星级:
该用户还上传了这些文档
ASP.NET动态网站设计与实现——以一个真实运行的网站为案例 教学课件 p.PPT
官方公共微信ASP.NET是新一代Web应用程序开发平台,它是一个已编译的、基于.NET的..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
毕业设计(论文)-基于ASP.NET的校园新闻网站系统设计
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口您所在的位置: &
手把手教你修改IIS目录的ASP.NET版本
手把手教你修改IIS目录的ASP.NET版本
目前已经有很多介绍创建IIS虚拟目录的文章了,但是这些文章只介绍如何来创建、删除一个虚拟目录,却没有介绍如何修改一个虚拟目录的ASP.NET版本。本文将手把手教你修改IIS目录的ASP.NET版本。
如果机子上装有两个版本以.NetFrameWork,在创建时将使用IIS中默认使用的版本,而默认的版本又不是你需要的,那怎么办?在部署后手动修改?还是在部署时直接使用程序修改呢?
一个用于修改虚拟目录的ASP.NET版本方法
ASP.NET IIS注册工具
使用ASP.NETIIS注册工具(Aspnet_regiis.exe)可以方便地更新ASP.NET应用程序的脚本映射,使其指向与该工具关联的ASP.NET版本.
关于ASP.NETIIS注册工具的更详细的内容,请参考MSDN.
在控制台上我们使用下面的命令可以修改一个虚拟目录的Asp.Net版本:
Aspnet_iis.exeCspath
我们知道了如何来修改一个虚拟目录的版本,现在的问题就是如何使用程序来实现它了.
以下代码基于.NetFrameWork2.0在WindowsXpsp2中编译通过://创建一个虚拟目录 &DirectoryEntrydirRoot=newDirectoryEntry("IIS://localhost/W3SVC/1/Root"); &DirectoryEntriesdirs=dirRoot.C &DirectoryEntryvirtualDir=dirs.Add("VirtualChange",dirRoot.SchemaClassName); &object[]objs=newobject[]{true}; &virtualDir.Invoke("AppCreate",objs); &virtualDir.Properties["AppFriendlyName"][0]="VirtualChange"; &virtualDir.Properties["Path"].Value="C:\\VirtualChange"; &<mitChanges(); &//启动aspnet_iis.exe程序 &stringfileName=Environment.GetEnvironmentVariable("windir")+@"\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe"; &ProcessStartInfostartInfo=newProcessStartInfo(fileName); &//处理目录路径 &stringpath=virtualDir.Path.ToUpper(); &intindex=path.IndexOf("W3SVC"); &pathpath=path.Remove(0,index); &//启动aspnet_iis.exe程序,刷新教本映射 &startInfo.Arguments="-s"+ &startInfo.WindowStyle=ProcessWindowStyle.H &startInfo.UseShellExecute=false; &startInfo.CreateNoWindow=true; &startInfo.RedirectStandardOutput=true; &startInfo.RedirectStandardError=true; &Processprocess=newProcess(); &process.StartInfo=startInfo; &process.Start(); &process.WaitForExit(); &stringerrors=process.StandardError.ReadToEnd(); &if(errors!=string.Empty) &thrownewException(errors); &Console.WriteLine(process.StandardOutput.ReadToEnd());&
修改IIS目录的ASP.NET版本成功
【编辑推荐】
【责任编辑: TEL:(010)】
关于的更多文章
Angular.js 是一个MV*(Model-View-Whatever,不管是MVC或者MVVM
本次的专刊为大家提供了Oracle最新推出的Java SE 8详细的开发教程,从解读到探究Java 8最新
JavaScript正凭借新型工具与功能提升以极度夸张的速度
国庆假期前的612,是不是有点折腾?网上的中秋国庆放
刚刚开始接触java数组的人都会听到一句类似的话:java
去年11月至今年8月间,香港学生组织大学师生监察无良企业行动(以下简称SACOM)通过调查发现,戴尔公司位于东莞的三家代工厂严重
51CTO旗下网站

我要回帖

更多关于 asp.net 获取虚拟目录 的文章

 

随机推荐