两星级 ASP 版社区之星编写的 ASP 常见问题解答
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 安全问题
别想偷偷摸摸的从客户端上传文件。
绝对不可能用脚本预先设置文件名。脚本语言没 有权限访问客户端的硬盘,客户端组件和控件即使签名也会提示是否安装……这一切,都是为了访客的安 全。要不然你把访客的硬盘 format 了怎么办?
8 与其他商家的合作问题
想发短信,可以联系移动运营商;想开商场,可以找银行做支付接口。这两项服务都要求在服务器上注 册组件,所以挑选虚拟主机时要多加选择,避免花冤枉钱。