关于ocx的注册问题,在线等待
zihan 2003-07-17 03:33:08 我用vb做了一个ocx控键,但是注册的时候出现了问题,我直接在命令提示符里面输入regsvr32 *.ocx可以正常使用,但是我在程序里面调用外部程序的时候,即使用WinExec('regsvr32 *.ocx',SW_SHOW) 的时候,它已经弹出了注册成功的对话框,但是该控键确不能使用,重新在命令提示符里面注册就可以,于是我用api的方式注册,代码如下
RegisterActiveX('*.ocx',true)
但是还是不能够使用,跟上面的问题一样,不知道哪位知道怎么回事没有???谢谢
function RegisterActiveX(const DllName: string; DoReg: Boolean): Boolean;
type
TRegProc = function(): HResult;
const
RegProcNames: array [False..True] of PChar = ('DllRegisterServer', 'DllUnregisterServer');
var
ActiveXModule: HMODULE;
RegProc: TRegProc;
begin
Result := False;
ActiveXModule := LoadLibrary(PChar(DllName));
if ActiveXModule = 0 then
Exit;
RegProc := TRegProc(GetProcAddress(ActiveXModule, RegProcNames[DoReg]));
if not Assigned(RegProc) then
Exit;
Result := not Failed(RegProc());
end;