求助:为什么我的组件在脚本中执行不正常?(与delphi中调用的结果不同)(100分)

  • 主题发起人 主题发起人 djjsl
  • 开始时间 开始时间
D

djjsl

Unregistered / Unconfirmed
GUEST, unregistred user!
各位老大,在下用的delphi写了一个ole automation的组件,继承了Idispatch接口。
这个组件有个功能是读注册表,如下:
function TTeleNote.GetInfoFromReg(var url:TURL):boolean;
var reg:TRegistry;
begin
reg := TRegistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
result := true;
try
if reg.OpenKey('/Software/aa/aa',false) then
begin
url.url := reg.ReadString('url');
url.password := reg.ReadString('password');
url.inputno := reg.ReadString('inputno');
result := true;
end;
finally
reg.CloseKey;
reg.Free;
end;
end;
我先用了delphi写的一个客户端程序来调用组件,执行没有任何问题。
接着用asp来调用组件,却发现try的过程中出现问题。
请问这时什么原因?我是一步一步返回值来确定问题所在的,请问有没有
直接调试脚本和组件的方法?
 
严重关注!
 
猜想:老兄是不是你的ASP程序的权限不够大(IIS中)
 
应该不会,应为同样的功能我用atl实现了一遍,用asp调用没有问题。
 
我写的一个组件也出现过ASP中调用出错的问题!但我没办法知道是在那个语句出错的!
但将对应的ASP页面的权限(IIS中)设成ADMINISTRATOR就不出错了。你以这种方式试试看!!!!!!
 
真是谢谢这位兄弟的关注,问题原因知道了。都是iis惹得祸。微软的全套用上没问题,
比如我用asp调用同功能用atl实现的组件,一点问题都没有。
我本来想用vb测试,但我的机子上vb一用"0x6600fddc"指令引用的"0x00000000"内存。
该内存不能为"read"。因此asp调用的时候,程序不能返回正常结果,可能是我的系统
出了问题。
bty,vb我都重装了三遍,还是没法用,有没有什么方法?
 
多人接受答案了。
 
后退
顶部