仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1149|回复: 9
打印 上一主题 下一主题

[学习教程] ASP.NET编程:用.net (在IIS中)创立假造目次(包含 脚...

[复制链接]
小魔女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:34:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
其实Java之所以在曾经独步天下,就是因为他的跨平台、安全性,这两方面,效率可不是Java的强项,反而是他最短的一块挡板,虽然net总是用理论证明比.NET快。iis|创立|剧本|假造目次两种言语在IIS中创立假造目次

用.net在IIS中创立假造目次
利用.NET的目次服务就能够会见IIS的设置,增加假造目次实在就是创立一个DirectoryEntry
庞大的在于DirectoryEntry的属性,实在就是假造目标一些设置,好比,权限,是不是要log,使用程序名等
Properties十分多,并且文档不太好找
具体能够参考MSDN以下内容
help://MS.MSDNQTR.2004JUL.1033/iissdk/iis/configuring_properties_in_the_iis_user_interface.htm
代码示例:
constStringconstIISWebSiteRoot="IIS://localhost/W3SVC/1/ROOT";
DirectoryEntryroot=newDirectoryEntry(constIISWebSiteRoot);
DirectoryEntryentry=newDirectoryEntry(constIISWebSiteRoot+"/"+virtualDirName);
DirectoryEntrytbEntry=root.Children.Add(virtualDirName,"IIsWebVirtualDir");
//mustbeendwitha
tbEntry.Properties["Path"][0]=virtualDirPath;
tbEntry.Invoke("AppCreate",true);
tbEntry.Properties["AccessRead"][0]=true;
tbEntry.Properties["ContentIndexed"][0]=false;
tbEntry.Properties["DefaultDoc"][0]="index.asp";
tbEntry.Properties["AppFriendlyName"][0]=virtualDirName;
tbEntry.Properties["AppIsolated"][0]=2;
tbEntry.Properties["AccessScript"][0]=true;
tbEntry.Properties["DontLog"][0]=true;

tbEntry.CommitChanges();

//************************************************************
用windows剧本言语创立假造目次.

Setshell=Wscript.CreateObject("WScript.Shell")

IfWscript.Arguments.Count<2Then
usage="USAGE:theVbsvirtual_directory_namedirectory_location_to_map"
WScript.Echousage
Wscript.Quit
EndIf

vDirName=Wscript.Arguments(0)
vDirPath=Wscript.Arguments(1)

Getthenameofthecurrentdirectory
Setfso=WScript.CreateObject("Scripting.FileSystemObject")
vDirPath=fso.GetFolder(vDirPath).Path

DoesthisIISapplicationalreadyexistinthemetabase?
OnErrorResumeNext
SetobjIIS=GetObject("IIS://localhost/W3SVC/1/Root/"&vDirName)
IfErr.Number=0Then
result=shell.Popup("Avirtualdirectorynamed"&vDirName&"alreadyexists."&vbCrLf&vbCrLf&"Wouldyoulikeitre-mappedforthissample?",0,"RemapVirtualDirectory?",4+32)4=YesNo&32=Question
Ifresult=6Then6=Yes
DeleteVirtualDirectoryvDirName
Else
WScript.Quit
EndIf
EndIf

UsingIISAdministrationobject,turnonscript/executepermissionsanddefinethevirtualdirectoryasanin-processapplication.
SetobjIIS=GetObject("IIS://localhost/W3SVC/1/Root")
SetvDirObj=objIIS.Create("IISWebVirtualDir",vDirName)

vDirObj.Path=vDirPath
vDirObj.AuthNTLM=True
vDirObj.AccessRead=True
vDirObj.AccessWrite=True
vDirObj.AccessScript=True
vDirObj.AccessExecute=True
vDirObj.AuthAnonymous=True
vDirObj.AnonymousUserName=owner
vDirObj.AnonymousPasswordSync=True
vDirObj.AppCreateTrue
vDirObj.SetInfo

IfErr.Number>0Then
shell.PopupErr.Description,0,"Error",1616=Stop
WScript.Quit
EndIf

GetthenameoftheaccountfortheanonymoususerinIIS
owner=vDirObj.AnonymousUserName

ChangenecessaryfolderpermissionsusingCACLS.exe
aclCmd="cmd/cechoy|CACLS"
aclCmd=aclCmd&""""&vDirPath&""""
aclCmd=aclCmd&"/E/G"&owner&":C"
rtc=shell.Run(aclCmd,0,True)

aclCmd="cmd/cechoy|CACLS"
aclCmd=aclCmd&""""&vDirPath&""""
aclCmd=aclCmd&"/E/G""VSDevelopers"":C"
rtc=shell.Run(aclCmd,0,True)

IfErr.Number>0Then
shell.PopupErr.Description,0,"Error",1616=Stop
WScript.Quit
Else
res=vDirName&"hasbeencreatedat"&vbCrLf&vDirPath
shell.Popupres,0,"Alldone",6464=Information
EndIf

SubDeleteVirtualDirectory(NameOfVdir)

Setiis=GetObject("IIS://localhost/W3SVC/1/Root")
iis.Delete"IISWebVirtualDir",vDirName

IfErr.Number0Then

errorString="Unabletodeleteexisitingvirtualdirectory."

IfErr.DescriptionIsNothingThen
errorString=errorString&"ErrorCode:"&Err.Number
Else
errorString=errorString&"Description:"&Err.Description
EndIf

shell.PopuperrorString,0,"Error",1616=Stop
EndIf

EndSub

//********************end
2003年中微软发布最新版本的ASP.netWebMatrix,对于我们喜欢用Asp.net来编程的朋友实在是个好消息,我也实实在在的将Asp.net更深入的研究了一下,以方便我以后更好的运用它,同时我也讲讲使用它的感受。
活着的死人 该用户已被删除
沙发
发表于 2015-1-19 16:46:16 | 只看该作者
碰到复杂点的问题都不知道能不能解决,现在有点实力的公司都选择自已在开源的基础上做开发。但没听说过有人在IIS上做改进的,windows、sqlserver集群方面的应用也很少见。
因胸联盟 该用户已被删除
板凳
发表于 2015-1-27 05:29:43 | 只看该作者
现在的ASP.net分为两个版本:1.1和2.0Asp.net1.1用VS2003(visualstudio2003)编程。Asp.net2.0用VS2005(visualstudio2005)编程。现在一般开发用的是VS2003。
再现理想 该用户已被删除
地板
发表于 2015-2-5 02:22:33 | 只看该作者
当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。
5#
发表于 2015-2-11 02:03:10 | 只看该作者
PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
若相依 该用户已被删除
6#
发表于 2015-3-1 19:37:52 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
小妖女 该用户已被删除
7#
发表于 2015-3-10 22:43:13 | 只看该作者
ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
透明 该用户已被删除
8#
发表于 2015-3-17 12:08:17 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
小魔女 该用户已被删除
9#
 楼主| 发表于 2015-3-17 12:08:18 | 只看该作者
大哥拜托,Java在95年就出来了,微软垄断个妹啊,服务器市场微软完全是后后来者,当年都是Unix的市场,现在被WindowsServer和Linux抢下大片,包括数据库也一样。
柔情似水 该用户已被删除
10#
发表于 2015-3-17 12:08:17 | 只看该作者
网页从开始简单的hmtl到复杂的服务语言,走过了10多个年头,各种技术层出不穷,单个的主流技术也在不断翻新的版本,现在分析下各种语言的区别、优势、劣势、开发注意事项!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表