无效的过程调用或参数

moonwrite 2009-01-19 05:12:47
运行一个asp 程序
大约30分钟后 提示:错误类型:Microsoft VBScript 运行时错误 (0x800A0005) 无效的过程调用或参数

先说整个程序是干什么的:
有一个Access的数据库文件 收录了整个网站成品的信息

每天都要上几个提供商的网站分别下载Excel文件 里面是最新产品的信息

运行asp程序 它会根据下载来的Excel内容 更新Access数据库文件 还会保存一些商品断货的信息到一个txt文件中

-------------------------------------------------------------------------------------------
这个asp程序在一台电脑上可以运行~

但到我的电脑上就不可以了
会提示:错误类型:Microsoft VBScript 运行时错误 (0x800A0005) 无效的过程调用或参数



错误信息还有:
HTTP 错误 500.100 - 内部服务器错误 - ASP 错误
Internet 信息服务

还有整个asp程序是放在 C:\Inetpub\wwwroot\ 中的~ 根据数据库的连接字符串 只可以放在这个文件夹中

再还有:我安装了.net1.x 和 .net2.0
...全文
787 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
toury 2009-01-20
  • 打赏
  • 举报
回复
我估计是程序没有容错机制,写入txt的时候冲突了
toury 2009-01-20
  • 打赏
  • 举报
回复
晕倒!兄弟,你先把
错误类型:
Microsoft VBScript 运行时错误 (0x800A0046)
没有权限 ------------------>那一行找出来贴出来就可以了。
如果你的浏览器没有显示行号,那就运用response大法
response.write err.description
response.end
来确定出错的行,这样就简洁了...
moonwrite 2009-01-20
  • 打赏
  • 举报
回复
1800+ 代码啊~~~~~ 很恐怖的
是怕你们不愿意看

贴一部分先
	if strConnectXLS4 <> "" then								
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
If FSO.FileExists(Server.MapPath("Database/newproducts/alt.csv")) Then
Set TSO = FSO.OpenTextFile(Server.MapPath("Database/newproducts/alt.csv"), ForWriting)
Else
Set TSO = FSO.CreateTextFile(Server.MapPath("Database/newproducts/alt.csv"))
End If
objRSXLS4.MoveFirst
count = 0
While Not objRSXLS4.EOF
if aobjRSXLS4(count) <> 1 then
For Each objField in objRSXLS4.Fields
TSO.Write ( objField.Value & "," )/*提示这句出错*/
Next
TSO.Write (vbcrlf)
end if
count = count + 1
objRSXLS4.MoveNext
Wend
objRSXLS4.close
end if


变量的声明:
<% 
Option Explicit
Server.ScriptTimeout = 900000
Dim count
Dim strConnect ' it is in the ConnectDatabase.asp file
Dim strConnectXLS1 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS2 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS3 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS4 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS5 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS6 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS7 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS8 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS9 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS10 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS11 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS12 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS13 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS14 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS15 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS16 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS17 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS18 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS19 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS20 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS21 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS22 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS23 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS24 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS25 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS26 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS27 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS28 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS29 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS30 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS31 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS32 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS33 ' it is in the ConnectDatabase.asp file
Dim strConnectXLS34 ' it is in the ConnectDatabase.asp file
Dim availability

Dim aobjRSXLS1(40000)
Dim aobjRSXLS2(35000)
Dim aobjRSXLS3(6000)
Dim aobjRSXLS4(4000)
Dim aobjRSXLS5(1000)
Dim aobjRSXLS6
Dim aobjRSXLS7(2000)
Dim aobjRSXLS8(3500)
Dim aobjRSXLS9(200)
Dim aobjRSXLS10(5000)
Dim aobjRSXLS11(5500)
Dim aobjRSXLS12(5000)
Dim aobjRSXLS13(1500)
Dim aobjRSXLS14(500)
Dim aobjRSXLS15(200)
Dim aobjRSXLS16(2000)
Dim aobjRSXLS17(600)
Dim aobjRSXLS18(40000)
Dim aobjRSXLS19(500)
Dim aobjRSXLS20(2500)
Dim aobjRSXLS21(500)
Dim aobjRSXLS22(6000)
Dim aobjRSXLS23(250)
Dim aobjRSXLS23_2(250)
Dim aobjRSXLS24(1000)
Dim aobjRSXLS25(160)
Dim aobjRSXLS26(100)
Dim aobjRSXLS27(100)
Dim aobjRSXLS28(1000)
Dim aobjRSXLS29(7000)
Dim aobjRSXLS30(100)
Dim aobjRSXLS31(200)
Dim aobjRSXLS32(200)
Dim aobjRSXLS33(500)
Dim aobjRSXLS34(500)


Dim objRSXLS1
Dim objRSXLS2
Dim objRSXLS3
Dim objRSXLS4
Dim objRSXLS5
Dim objRSXLS6
Dim objRSXLS7
Dim objRSXLS8
Dim objRSXLS9
Dim objRSXLS10
Dim objRSXLS11
Dim objRSXLS12
Dim objRSXLS13
Dim objRSXLS14
Dim objRSXLS15
Dim objRSXLS16
Dim objRSXLS17
Dim objRSXLS18
Dim objRSXLS19
Dim objRSXLS20
Dim objRSXLS21
Dim objRSXLS22
Dim objRSXLS23
Dim objRSXLS23_2
Dim objRSXLS24
Dim objRSXLS25
Dim objRSXLS26
Dim objRSXLS27
Dim objRSXLS28
Dim objRSXLS29
Dim objRSXLS30
Dim objRSXLS31
Dim objRSXLS32
Dim objRSXLS33
Dim objRSXLS34

Set objRSXLS1 =Server.CreateObject("ADODB.recordset")
Set objRSXLS2 =Server.CreateObject("ADODB.recordset")
Set objRSXLS3=Server.CreateObject("ADODB.recordset")
Set objRSXLS4=Server.CreateObject("ADODB.recordset")
Set objRSXLS5=Server.CreateObject("ADODB.recordset")
Set objRSXLS6=Server.CreateObject("ADODB.recordset")
Set objRSXLS7=Server.CreateObject("ADODB.recordset")
Set objRSXLS8=Server.CreateObject("ADODB.recordset")
Set objRSXLS9=Server.CreateObject("ADODB.recordset")
Set objRSXLS10=Server.CreateObject("ADODB.recordset")
Set objRSXLS11=Server.CreateObject("ADODB.recordset")
Set objRSXLS12=Server.CreateObject("ADODB.recordset")
Set objRSXLS13=Server.CreateObject("ADODB.recordset")
Set objRSXLS14=Server.CreateObject("ADODB.recordset")
Set objRSXLS15=Server.CreateObject("ADODB.recordset")
Set objRSXLS16=Server.CreateObject("ADODB.recordset")
Set objRSXLS17=Server.CreateObject("ADODB.recordset")
Set objRSXLS18=Server.CreateObject("ADODB.recordset")
Set objRSXLS19=Server.CreateObject("ADODB.recordset")
Set objRSXLS20=Server.CreateObject("ADODB.recordset")
Set objRSXLS21=Server.CreateObject("ADODB.recordset")
Set objRSXLS22=Server.CreateObject("ADODB.recordset")
Set objRSXLS23=Server.CreateObject("ADODB.recordset")
Set objRSXLS23_2=Server.CreateObject("ADODB.recordset")
Set objRSXLS24=Server.CreateObject("ADODB.recordset")
Set objRSXLS25=Server.CreateObject("ADODB.recordset")
Set objRSXLS26=Server.CreateObject("ADODB.recordset")
Set objRSXLS27=Server.CreateObject("ADODB.recordset")
Set objRSXLS28=Server.CreateObject("ADODB.recordset")
Set objRSXLS29=Server.CreateObject("ADODB.recordset")
Set objRSXLS30=Server.CreateObject("ADODB.recordset")
Set objRSXLS31=Server.CreateObject("ADODB.recordset")
Set objRSXLS32=Server.CreateObject("ADODB.recordset")
Set objRSXLS33=Server.CreateObject("ADODB.recordset")
Set objRSXLS34=Server.CreateObject("ADODB.recordset")

Const ForWriting = 2 ' Input OutPut mode
Const Create = True
Const ForAppending = 8

Dim MyFile
Dim FSO ' FileSystemObject
Dim TSO ' TextStreamObject

MyFile = Server.MapPath("deleted_products.txt")

%>


如果还需要代码的话
我下次全贴出来
ChinaXtHuLang 2009-01-20
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 layers2323 的回复:]
通常找问题总是从代码开始的,无论是不是代码的问题。
[/Quote]
说的对。。代码的没有怎么帮啊??
建议LZ把代码帖出来哦。。
layers2323 2009-01-20
  • 打赏
  • 举报
回复
通常找问题总是从代码开始的,无论是不是代码的问题。
toury 2009-01-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 moonwrite 的回复:]
引用 2 楼 toury 的回复:
说了半天,正题一句没有。代码,尤其是出错行的代码呢?



全部东西写在一个asp文件中 50多k啊~而且在另外一台电脑上可以运行 所以我想不是程序的原因
通常提示错误的地方都是跟文件操作有关

现在在试试hookee 提供的方法
基本上要运行30分钟才有结果

先祝大家新年快乐先~


[/Quote]
对不起,可能我的语气不礼貌了,不过我没别的意思,请原谅
你出错的那行是什么?不妨贴出来
moonwrite 2009-01-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 toury 的回复:]
说了半天,正题一句没有。代码,尤其是出错行的代码呢?
[/Quote]


全部东西写在一个asp文件中 50多k啊~而且在另外一台电脑上可以运行 所以我想不是程序的原因
通常提示错误的地方都是跟文件操作有关

现在在试试hookee 提供的方法
基本上要运行30分钟才有结果

先祝大家新年快乐先~

moonwrite 2009-01-20
  • 打赏
  • 举报
回复
虽然问题还是没有解决
但还是感谢你们 特别感谢toury
toury 2009-01-20
  • 打赏
  • 举报
回复
你找到newproducts这个文件夹,右键newproducts文件夹--属性--安全,把everone的写入和修改权限放开。
或者用3楼的方法:开始-运行:cacls "输入newproducts文件夹的完整目录\*.*" /E /G Everyone:F
然后回车

可能你boss的机器newproducts这个文件夹所在盘是FAT,而你的是NTFS吧
试一下
moonwrite 2009-01-20
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 moonwrite 的回复:]
再人工顶贴

Boss所用的全英语的软件
我的+测试的全中文的软件


再另外 1009 提示错误的是用遨游浏览器的结果(对不起 不是浏览器原因)
1077 提示错误的是用IE的浏览器的结果(对不起 不是浏览器原因)
Quote]
moonwrite 2009-01-20
  • 打赏
  • 举报
回复
再人工顶贴

Boss所用的全英语的软件
我的+测试的全中文的软件


再另外 1009 提示错误的是用遨游浏览器的结果
1077 提示错误的是用IE的浏览器的结果
moonwrite 2009-01-20
  • 打赏
  • 举报
回复
我已经贴出错误的位置那段代码啦

现在整个程序在三部电脑上运行
1.Boss那部可以正常运行 正版的系统 英语版的(这个asp程序也是外国人写的)(会不会是数据流的什么什么错误)
2.另外一部电脑(盗版+中文) 提示是1009行 对应要操作的文件是: Database/newproducts/ingram.csv (路径正确的)
3.我的电脑(盗版+中文)上运行的 提示是1077行 对应要操作的文件是: Database/newproducts/alt.csv (路径正确的)

另外我不会asp 我是asp.net(C#)的
关于操作文件的 我更不熟悉了
菜子儿 2009-01-19
  • 打赏
  • 举报
回复
过来学习学习。。。顺便帮顶~~~~~~~UPUP
hookee 2009-01-19
  • 打赏
  • 举报
回复
检查一下mdb和xsl的文件系统权限,假设存文件的目录是c:\abc
命令行 cacls "c:\ab\*.*" /E /G Everyone:F
然后再运行看下是否成功。
toury 2009-01-19
  • 打赏
  • 举报
回复
说了半天,正题一句没有。代码,尤其是出错行的代码呢?
moonwrite 2009-01-19
  • 打赏
  • 举报
回复
补充一下
我要IE打开既然是这种错误提示:
错误类型:
Microsoft VBScript 运行时错误 (0x800A0046)
没有权限


上面那个的提示是用遨游打开的

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧