dll注册问题,大家伸伸手,帮一下! 我用d6编写的dll文件,在win2000下用:regsrv32 + MydllPath进行注册,注册可以完成,但是完成后会出现一个错误:“指令引用内存。改内存不能read”,请大家帮助解决一下,先谢了!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以把你地dll简单地贴出来看看吗 这是接口调用的代码:unit Ut0LinkManComType;{$WARN SYMBOL_PLATFORM OFF}interfaceuses Windows, ActiveX, Classes, ComObj, Forms, SysUtils, LinkMan_TLB, StdVcl, ut9GVariable,ut0Data,PKPM_TLB, Ut2LinkMan;type TLinkManCom = class(TTypedComObject, ILinkManCom) protected function ShowLinkManForm(const ePkpmSys: IUnknown): HResult; stdcall; end;var ePkpm:IePkpmSys; ePkpmUser:IePkpmUser; implementationuses ComServ;function TLinkManCom.ShowLinkManForm(const ePkpmSys: IUnknown): HResult;var ptrMainForm: ^Longint; FM2New: TFM2LinkMan; dbHandle: integer;begin Result := S_OK; if Assigned(epkpmSys) then if epkpmSys.QueryInterface(IID_IePkpmSys, epkpm) = S_OK then begin ptrMainForm := @(Application.MainForm); ptrMainForm^ := ePkpm.GetMainForm; Application.Handle := ePkpm.GetHandle; DM0Data := TDM0Data.Create(nil); dbhandle := ePkpm.GetDBHandle; if Assigned(ePkpm) then DM0Data.InitConnection2(dbhandle) else DM0Data.InitConnection(GetDBPath); FM2New := TFM2LinkMan.Create(Application.MainForm); with FM2New do try //取得用户SUERNUM if epkpmSys.QueryInterface(IID_IePkpmUser, ePkpmUser) <> S_OK then Raise Exception.Create('系统接口无法初始化!'); Position := poDefaultPosOnly; FormStyle := fsMDIChild; WindowState := wsMaximized; Show; epkpm.SetCurrWin(FM2New.Handle); except on E: Exception do if Assigned(DM0Data) then begin DM0Data.Free; DM0Data := nil; end; end; end;end; 放下delphi的ide不用非搞什么regsrv32 + MydllPath; 关键是我给用户使用时,不能把delphi的ide给带上把还要用regsrv32来注册dll可是一注册就报错,期待高人指教! to delphimo((误入歧途)) :写一个批处理文件注册dll,注册一个报一个错,但都能注册成功,郁闷呀!! Midas.dll Copy 过去了?如果是98还需要安装组建服务 to: snake_eye(★蛇眼★上帝派来灌水的人)Midas.dll已经copy过去了,我用的是win2k系统,我用同样的方法注册d5编写的dll就没有问题(d5用的是运行期包,d6不是,我想和这个应该没关系吧)。大家可否给点建议,这种问题应该从那一方面着手解决,谢了!! delphi执行外部程序等待程序运行成功,而不是程序退出 DBChart X轴显示问题?? 大家有什么要求随便提,顺便送点分! 有没有第三方标尺组件? 问个组合的问题 我懵了 【动态数组→流→数据库】求助 !!!用Delphi+SQLServer2k做的程序(三层结构)!!!急求解决方法共200分贴1 请问哪位大大能提供将cd转换mp3或wav格式的免费控件或方法 高分求教!!如何使用 Delphi 程序对一个文本文件内容进行删改? 一个概念性问题? DBGrid两问 详细设计的讨论
unit Ut0LinkManComType;{$WARN SYMBOL_PLATFORM OFF}interfaceuses
Windows, ActiveX, Classes, ComObj, Forms, SysUtils, LinkMan_TLB, StdVcl,
ut9GVariable,ut0Data,PKPM_TLB, Ut2LinkMan;
type
TLinkManCom = class(TTypedComObject, ILinkManCom)
protected
function ShowLinkManForm(const ePkpmSys: IUnknown): HResult; stdcall;
end;
var
ePkpm:IePkpmSys;
ePkpmUser:IePkpmUser;
implementationuses ComServ;function TLinkManCom.ShowLinkManForm(const ePkpmSys: IUnknown): HResult;
var
ptrMainForm: ^Longint;
FM2New: TFM2LinkMan;
dbHandle: integer;
begin
Result := S_OK;
if Assigned(epkpmSys) then
if epkpmSys.QueryInterface(IID_IePkpmSys, epkpm) = S_OK then begin
ptrMainForm := @(Application.MainForm);
ptrMainForm^ := ePkpm.GetMainForm;
Application.Handle := ePkpm.GetHandle; DM0Data := TDM0Data.Create(nil);
dbhandle := ePkpm.GetDBHandle;
if Assigned(ePkpm) then
DM0Data.InitConnection2(dbhandle)
else
DM0Data.InitConnection(GetDBPath); FM2New := TFM2LinkMan.Create(Application.MainForm);
with FM2New do
try
//取得用户SUERNUM
if epkpmSys.QueryInterface(IID_IePkpmUser, ePkpmUser) <> S_OK then
Raise Exception.Create('系统接口无法初始化!'); Position := poDefaultPosOnly;
FormStyle := fsMDIChild;
WindowState := wsMaximized;
Show;
epkpm.SetCurrWin(FM2New.Handle);
except
on E: Exception do
if Assigned(DM0Data) then begin
DM0Data.Free;
DM0Data := nil;
end;
end;
end;
end;
还要用regsrv32来注册dll
可是一注册就报错,期待高人指教!
写一个批处理文件注册dll,注册一个报一个错,但都能注册成功,郁闷呀!!
如果是98还需要安装组建服务
Midas.dll已经copy过去了,我用的是win2k系统,我用同样的方法注册d5编写的dll就没有问题(d5用的是运行期包,d6不是,我想和这个应该没关系吧)。大家可否给点建议,这种问题应该从那一方面着手解决,谢了!!