首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

pb如何调用vb.net写的dll

2012-03-03 
pb怎么调用vb.net写的dll?我用vb.net的类库写了个dll,代码是这样的(套用某大侠的代码,不是我自己写的)Publ

pb怎么调用vb.net写的dll?
我用vb.net的类库写了个dll,代码是这样的(套用某大侠的代码,不是我自己写的)
Public Class Class1
  Declare Function lOpen Lib "kernel32" Alias "_lopen" (ByVal lpPathName As String, ByVal iReadWrite As Int32) As Int32
  Declare Function lClose Lib "kernel32" Alias "_lclose" (ByVal hFile As Int32) As Int32
  Public Function IsFileAlreadyOpen(ByVal FileName As String) As Boolean
  Dim hFile As Long
  Dim lastErr As Long
  hFile = -1 ' 初始化文件句柄.  
  lastErr = 0
  hFile = lOpen(FileName, &H10)

  If hFile = -1 Then ' 文件是否能正确打开并可共享  
  lastErr = Err.LastDllError
  Else
  lClose(hFile)
  End If
  IsFileAlreadyOpen = (hFile = -1) And (lastErr = 32)
  End Function
End Class
然后用pb调用的时候出现这个提示bad runtime function reference at line xx...
是为什么啊?怎样才能正确调用该dll?


[解决办法]
呵呵,上面的API也可以直接在PB里面声明调用的呀,
如果是pb10以后,在pbt处单击右键就可以加载.net的dll的,使用import extends...,
呵呵,
[解决办法]
哈哈,PB调用VB的DLL,这个问题我花几天时间刚刚解决~VB写的DLL与其它DLL不一定;因为VB写的DLL文件在生成DLL文件时封装了class,所以不能用常规的方法调用;参议你写能OCX用OLE调用,保证一次能通过.
[解决办法]

探讨
哈哈,PB调用VB的DLL,这个问题我花几天时间刚刚解决~VB写的DLL与其它DLL不一定;因为VB写的DLL文件在生成DLL文件时封装了class,所以不能用常规的方法调用;参议你写能OCX用OLE调用,保证一次能通过.

热点排行