| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 992 人关注过本帖
标题:[求助]关于dll的声明
取消只看楼主 加入收藏
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
 问题点数:0 回复次数:5 
[求助]关于dll的声明

1.一开始的时候,我在通用声明里写:
Private Declare Sub outputbdy Lib "dlltest.dll" ()
在某个按钮的单击命令下直接: call outputbdy 调用过程是可以实现的。

注:此时dll是放在vb的根目录也就是app.path下的。

2.现在,我把所有的dll都放在根目录下的bin文件夹中。这个时候,我看书上说就需要在声明
Private Declare Sub outputbdy Lib "dlltest.dll" () 中加上dll的详细目录位置,否则vb会找不到这个文件。

请问在以上情况下,改如何为dll添加具体的目录位置,谢谢各位~~~~~







[此贴子已经被作者于2007-1-10 14:27:46编辑过]

搜索更多相关主题的帖子: dll 声明 
2007-01-10 14:26
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
得分:0 
以下是引用PcrazyC在2007-1-10 14:36:28的发言:
Private Declare Sub outputbdy Lib & APP.Path & "\dlltest.dll" ()
采用相对路径

这段代码好象不对吧 复制到vb里是红色的 应该是某个地方有问题的

再请教

2007-01-10 14:40
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
得分:0 
以下是引用PcrazyC在2007-1-10 14:40:46的发言:
Private Declare Sub outputbdy Lib & APP.Path & "\bin\dlltest.dll" ()
再加一点,没看清楚!

提示


缺少:字符串常数

2007-01-10 14:42
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
得分:0 
以下是引用清澂居士在2007-1-10 14:37:03的发言:
Private Declare Sub outputbdy Lib "DLL路徑\dlltest.dll" ()



搞不懂什么意思

2007-01-10 14:42
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
得分:0 
以下是引用PcrazyC在2007-1-10 14:51:12的发言:

DLL路徑就是DLL文件的完整路径



但是我现在是在根目录下的 bin文件夹下 应该怎么写?

因为装在那里不确定,所以只能用app.path来确定。 请问该怎么写?

2007-01-10 14:53
googlers
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-5-8
收藏
得分:0 
以下是引用清澂居士在2007-1-10 14:53:50的发言:

可以在运行时用App.Path得到绝对路径,然后用LoadLibrary

Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32"(ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long,ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long

Private Sub Form_Load()
On Error Resume Next
Dim lb As Long,pa As Long
lb =LoadLibrary("user32")
pa =GetProcAddress(lb,"SetWindowTextA")
CallWindowProc pa,Me.hWnd,"Hello !",ByVal 0&,ByVal 0&
FreeLibrary lb
End Sub

太高深了 看不懂 难道没有简单的解决办法?

2007-01-10 15:16
快速回复:[求助]关于dll的声明
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028037 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved