主题:[转帖]ASP常见问题解答
yaozheng
[专家分:28410] 发布于 2005-08-16 21:52:00
1 CDONTS.NewMail不能发邮件
1 确定已经安装了IIS的SMTP服务。
2 在IIS管理器中,设置smtp服务的属性。在中继对话框里设置“仅除以下列表以外”。因为默认情况下它只给某列表中列出的服务器转信,但是这个列表是空的,所以发不出去。
2 无法登陆SQL SERVER
这是因为安装SQL SERVER时使用了NT验证模式,而ASP以匿名身份运行,不够资格访问数据库服务器。解决方法:把SQL SERVER改成混合验证模式(包含SQL验证)
3 ODBC访问Access时出现无法访问注册表关键字的错误
错误信息为:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x4ec Thread 0x81c DBC 0x22f3544 Jet'。
这是因为Windows2000 SP2以后的新bug造成的。也许微软不喜欢ODBC了,所以出此下策。正确的方法是使用OLEDB来连接Access。连接字符串为:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据库文件名
4 权限问题
ASP没有权限访问某些文件夹。因此运行VB编写的组件可能会出毛病。设置system32文件夹的属性,赋予IUSR用户运行权限即可。ASP也没有权限访问注册表。这个可以用组件来实现。把组件注册到COM+里,然后指定其以高级身份运行;或者取消虚拟目录的“匿名访问”,让访客输入管理员密码,这时候ASP就提升为管理员身份运行了。ADSI也是一样。
如果Access数据库存放在受保护的文件夹,就会出现80004005错误。此时也需要设置文件夹的权限。
5 加密问题
MD5不是加密算法,因此不能解密。要传输加密数据,关键是不能把算法暴露在客户端。所以根本别想把客户端的数据加密传到服务器上。
6 保护知识产权
ASP基本上算是不能加密的东西。不要用screnc编码工具。那根本是个垃圾。要加密,就只能用组件技术了。去学VB吧!
7 安全问题
别想偷偷摸摸的从客户端上传文件。<input type=file>绝对不可能用脚本预先设置文件名。脚本语言没有权限访问客户端的硬盘,客户端组件和控件即使签名也会提示是否安装……这一切,都是为了访客的安全。要不然你把访客的硬盘format了怎么办?
8 与其他商家的合作问题
想发短信,可以联系移动运营商;想开商场,可以找银行做支付接口。这两项服务都要求在服务器上注册组件,所以挑选虚拟主机时要多加选择,避免花冤枉钱。
回复列表 (共30个回复)
沙发
李剑 [专家分:0] 发布于 2005-08-17 17:47:00
你真了不起[em8]
板凳
旷野狼 [专家分:0] 发布于 2005-11-14 10:45:00
什么时候才能比楼住NB
3 楼
longlong16 [专家分:10670] 发布于 2005-12-01 10:43:00
果然是高手啊
4 楼
liujun53 [专家分:60] 发布于 2005-12-01 20:26:00
羡慕,要学习!
5 楼
hargen [专家分:160] 发布于 2005-12-30 10:11:00
恩不错!!!
6 楼
牛牛哥 [专家分:0] 发布于 2006-01-12 13:07:00
菜鸟向你学习致敬·····
7 楼
lesliewk [专家分:0] 发布于 2006-02-16 09:50:00
哎~~可怜我自己连遇到这些问题的机会都还没有过。。。
8 楼
爱学习的老鼠 [专家分:80] 发布于 2006-02-21 22:31:00
呵呵。。高手!
下次有不懂的问题可要向您请教拉。
9 楼
bolong [专家分:0] 发布于 2006-03-16 10:18:00
我用的是XP,老是出现以下错误信息!!又该怎么改呀!!急!!高手救命!!
技术信息(用于支持人员)
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0xd2c Thread 0xecc DBC 0x124ed8c Jet'。
/bbs/123/Connections.asp, 第 6 行
浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
网页:
GET /bbs/123/index.asp
时间:
2006年3月16日, 10:04:13
详细信息:
Microsoft 支持
10 楼
ckiss [专家分:0] 发布于 2006-03-17 14:07:00
这个错误是错了数据库是的
看这些对你有帮助不!
80004005错误
-----------------------------------------------------------------------------------------
响应对象 错误 'ASP 0156 : 80004005'
标题错
/bbs/bbs.asp, 行18
HTTP 标题已经写入到 客户浏览器。任何 HTTP 标题的修改必须在写入页内容之前。
这样的错误怎样解决?
在线等待。
谢谢
---------------------------------------------------------------
把类似这样的语句放到asp文件最上边
response.ContentType="application/msword"
---------------------------------------------------------------
Response.Redirect可以将网页转移至另外的网页上,使用的语法结构是这样的:Response.Redirect网址,其中网址可以是相对地址或绝对地址,但在IIS4.0使用与在IIS5.0使用有所不同。
在IIS4.0转移网页须在任何数据都未输出至客户端浏览器之前进行,否则会发生错误。这里所谓的数据包括HTML的卷标,例如:< HTML>,< BODY>等,而在IIS5.0中已有所改进,在IIS5.0的默认情况下缓冲区是开启的,这样的错误不再产生。
在Response对象中有一Buffer属性,该属性可以设置网站在处理ASP之后是否马上将数据传送到客户端,但设置该属性也必须在传送任何数据给客户端之前。
为保险起见,无论采用何种ASP运行平台,在页面的开始写上< % Response.Buffer=True %>,将缓冲区设置为开启,这样的错误就不会发生了。
我来回复