关于加载(.dll)动态库的问题??十万火急!!!!!!(200分)

  • 主题发起人 主题发起人 wenzang
  • 开始时间 开始时间
W

wenzang

Unregistered / Unconfirmed
GUEST, unregistred user!
在window系统中,除了使用rundll32.exe+dll+','+function的方法来加载一个dll外;还提供有其他的方法来加载dll吗?
比如说载注册表的某一个地方.......能不能,不使用exe文件来加载一个dll?......
 
>不使用exe文件来加载一个dll
; 这是你的最终目的吗?
; 如果仅仅是想达到exe结束之后dll仍驻留内存的效果,可以参考:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=563632
 
dll不驻留内存。能加载里面的函数就行。。。。。麻烦大家了。。
 
type
; TProc = procedure;

implementation

procedure RunDllProc(DllName, ProcName: string);
var
; WHnd: Integer;
; Proc: TProc;
begin
; WHnd := LoadLibrary(PChar(DllName));
; if WHnd <> 0 then
; begin
; ; @Proc := GetProcAddress(WHnd, PChar(ProcName));
; ; if @Proc <> nil then
; ; ; Proc;
; ; try
; ; ; FreeLibrary(WHnd);
; ; except
; ; end;
; end;
end;

在Delphi的帮助中查找“dynamically loadable libraries”然后选“Dynamic loading”。
 
TO Ary:
你用什么来执行你的这段程序。如果是编译成exe。那么你的答案不符我的要求。。。。。。
 
是不是,我的问题很不符合逻辑?不太现实。。。。?????
 
You could try to build an exe file & rename it to a dll file.
Then it is still an executable file, but it looks like a dll, is it ok?
 
多人接受答案了。
 
后退
顶部