|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
写软件都是想的时间比写的时间要长的.如果反过来了就得看看是什么原因了.另外大家可以回去问问公司里的小MM.(一般企业里,跟你们交付软件接触得最多的是她们)serv-u|创立新建一《SERV-U》FTP服务器,在ASP中修正指定帐户的暗码,写了一ASP组件来修正《SERV―U》FTP暗码。
启动《Vb6.0》,选择新建ActiveXDLL,变动工程属性中的工程称号为“Ftpcommand”,将CLASS名改成XJNFTP,源程序以下:
PrivateConstscUserAgent="vbwininet"
PrivateConstINTERNET_OPEN_TYPE_PRECONFIG=0
PrivateConstINTERNET_OPEN_TYPE_DIRECT=1
PrivateConstINTERNET_OPEN_TYPE_PROXY=3
PrivateConstINTERNET_INVALID_PORT_NUMBER=0
PrivateConstFTP_TRANSFER_TYPE_BINARY=&H2
PrivateConstFTP_TRANSFER_TYPE_ASCII=&H1
PrivateConstINTERNET_FLAG_PASSIVE=&H8000000
PrivateConstINTERNET_SERVICE_FTP=1
PrivateConstINTERNET_SERVICE_GOPHER=2
PrivateConstINTERNET_SERVICE_HTTP=3
PrivateDeclareFunctionInternetOpenLib"wininet.dll"Alias"InternetOpenA"_
(ByValsAgentAsString,ByVallAccessTypeAsLong,ByValsProxyNameAsString,_
ByValsProxyBypassAsString,ByVallFlagsAsLong)AsLong
PrivateDeclareFunctionFtpCommandLib"wininet.dll"Alias"FtpCommandA"_
(ByValhConnectAsLong,ByValfExpectResponseAsBoolean,ByValdwFlagsAsLong,_
ByVallpszCommandAsString,ByVallContextAsLong,phFtpCommandAsLong)AsBoolean
PrivateDeclareFunctionInternetConnectLib"wininet.dll"Alias"InternetConnectA"_
(ByValhInternetSessionAsLong,ByValsServerNameAsString,ByValnServerPortAsInteger,_
ByValsUsernameAsString,ByValsPasswordAsString,ByVallServiceAsLong,_
ByVallFlagsAsLong,ByVallContextAsLong)AsLong
PrivatehOpenAsLong
PrivatehConnectionAsLong
PrivateDeclareFunctionInternetCloseHandleLib"wininet.dll"_
(ByValhInetAsLong)AsInteger
PrivatenewPASSWORDAsString
PrivateoldPASSWORDAsString
PrivateuserNameAsString
PrivateURLSTRAsString
‘修正FTP暗码主程序
PublicFunctiongetStr()AsString
hOpen=0
hConnection=0
DimnFlagAsLong
DimstrCmdAsString
nFlag=INTERNET_FLAG_PASSIVE
‘创建FTP修正暗码命令字符串
strCmd="SITEPSWD"&oldPASSWORD&Space(1)&newPASSWORD
‘创建internet毗连
hOpen=InternetOpen(scUserAgent,INTERNET_OPEN_TYPE_DIRECT,vbNullString,vbNullString,0)
IfhOpen=0ThengetStr="不克不及翻开毗连。..."
IfhOpen0Then
‘与FTP服务器创建毗连
hConnection=InternetConnect(hOpen,URLSTR,NTERNET_INVALID_PORT_NUMBER,_
userName,oldPASSWORD,INTERNET_SERVICE_FTP,nFlag,0)
IfhConnection0Then
bret=FtpCommand(hConnection,False,FTP_TRANSFER_TYPE_ASCII,strCmd,0,hFile)
IfbretThen
getStr="暗码修正乐成!..."
Else
getStr="暗码修正失利!..."
EndIf
Else
getStr="没法登录至FTP服务器,请反省帐户名或暗码是不是准确。"
EndIf
EndIf
‘断开internet毗连
IfhConnection0ThenInternetCloseHandle(hConnection)
‘断开FTP服务器毗连
IfhOpen0ThenInternetCloseHandle(hOpen)
EndFunction
‘传进FTP服务器的URL
PublicPropertyLetURL(URL1AsString)
URLSTR=URL1
EndProperty
‘传进FTP原有暗码
PublicPropertyLetoldPSD(psdAsString)
oldPASSWORD=psd
EndProperty
‘传进FTP新暗码
PublicPropertyLetnewPSD(psd1AsString)
newPASSWORD=psd1
EndProperty
‘传进FTP帐户名
PublicPropertyLetuser(psd2AsString)
userName=psd2
EndProperty
编译成Ftpcommand.DLL,在ASP服务器端注册该组件,(VB6.0在ASP服务器中主动注册),在ASP中挪用该组件,源程序以下:
<%
‘承受传进的帐户名
user=trim(request.form("id"))
‘承受传进的原暗码
psw=trim(request.form("password"))
‘承受传进的新暗码
pswx=trim(request.form("passwordx"))
‘创立FTP组件使用实例
Dimobj
Setobj=Server.CreateObject("ftpcommand.xjnftp")
‘给FTP组件传送帐户名
obj.user=user
‘给FTP组件传送原暗码
obj.oldpsd=psw
‘给FTP组件传送新暗码
obj.newpsd=pswx
‘给FTP组件传送FTP服务器域名地点(URL)
obj.url="ftp://ftp.luckybbs.com"
rr=obj.getstr()
Response.Write("<metaHTTP-EQUIV=REFRESHCONTENT=3;URL=/main.asp>")
Response.Write("<p><center&</p>asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。 |
|