以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 调用外部DLL没法调通 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=119776) |
-- 作者:goodhawk -- 发布时间:2018/5/31 18:03:00 -- [求助] 调用外部DLL没法调通 用了外部的dll, 在VB里头能调用得通, 但是在foxtable里头会报错, 在foxtable 里头显示如上的错误 下面的沟通是跟客服小黄的交流: 我的问题是: 这个是类, 怎么声明, 怎么用? 代码: Dim t As eloamComLib.EloamGlobal If t.InitDevs() Then MessageBox.Show("OK") End If |
-- 作者:有点甜 -- 发布时间:2018/5/31 18:12:00 -- 你在vs工具里面,新建一个vb.net项目,能否调通? |
-- 作者:有点甜 -- 发布时间:2018/5/31 18:14:00 -- 如果vb.net调通了,去debug文件夹,把生成的dll文件拷贝出来,在foxtable里面引用。 |
-- 作者:有点甜 -- 发布时间:2018/5/31 18:15:00 -- 看看 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=118055&skin=0
|
-- 作者:goodhawk -- 发布时间:2018/5/31 18:49:00 -- 以下是引用有点甜在2018/5/31 18:15:00的发言:
看看 http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=118055&skin=0
我用的高拍仪跟你提供的帖子一模一样。 不过对方的处理方式,我觉得不一定对, @有点甜, 现在就是一个问题, 一个 dll(我猜测对方是用c或者c++封装的), 在VB里头能用, 如何让这个dll在 foxtable 里头也能用 关于那个 framework 2.0, 3.5 的问题, 晚上我找朋友来生成一下 |
-- 作者:有点甜 -- 发布时间:2018/5/31 20:55:00 -- 就是这样用的:vb.net里面做一个项目,引用com控件进来,生成接口dll以后,拷贝出来,在foxtable引用此dll,即可。 |
-- 作者:goodhawk -- 发布时间:2018/5/31 21:03:00 -- 其实我这个的接口不是 com 控件, 是一个 dll ,厂商也说他们对外提供的也是一个 dll 如下就是这个厂商外露的 dll 文件,@有点甜, 能否在 foxtable 里头定义个 类,类似这样子: Dim vEloamGlobal As eloamComLib.EloamGlobal
|
-- 作者:goodhawk -- 发布时间:2018/5/31 22:12:00 -- 晚上朋友帮忙转换成 dll 2.0 后, 目前是OK的。 明日再细节试一下。 |
-- 作者:goodhawk -- 发布时间:2018/6/1 14:25:00 -- 调试了一下, 这个是个初级版本, 可以支持高拍仪的扫描: 步骤: 1, dll 通过老师说的, 转成一个 framework 2.0 的版本,debug 出来会有2个dll, 只需要引用 Interop.eloamComLib.dll 即可 2, 在foxtable 里头做增加,引用 3, 代码参照如下: 是能拍,偶尔会弹出来对象没有引用, 甚是奇怪 以下内容为程序代码: 1 Dim EloamGlobal As New eloamComLib.EloamGlobal 2 Dim EloamDevice As New eloamComLib.EloamDevice 3 Dim EloamVideo As New eloamComLib.EloamVideo 4 Dim EloamImage As New eloamComLib.EloamImage 5 Dim EloamView As New eloamComLib.EloamView 6 Dim fileName As String 7 Dim vpicBox As WinForm.PictureBox = e.Form.Controls("picBox") 8 9 fileName = "E:\\" + Format(Now, "yymmddhhmmss") + ".jpg" 10 11 12 \'初始化 13 If EloamGlobal.InitDevs() Then 14 MsgBox ("成功:" & EloamGlobal.GetFriendlyName(1, 0)) 15 Else 16 MsgBox ("初始化设备失败") 17 End If 18 19 \'创建设备 20 EloamDevice = EloamGlobal.CreateDevice(1, 0) 21 EloamVideo = EloamDevice.CreateVideo(0, 1) 22 23 EloamImage = EloamVideo.CreateImage(16, EloamView) \'A4画幅 24 25 \'EloamImage = Rotate90_180(EloamImage, 90) 26 27 If EloamImage.Save(fileName, 0) Then 28 MsgBox ("扫描成功,文件名:" & fileName) 29 Else 30 MsgBox ("扫描失败") 31 End If 32 33 vpicBox.ImageFile = filename 34 35 \'销毁设备 36 EloamVideo.Destroy 37 EloamDevice.Destroy 38 EloamGlobal.DeinitDevs |
-- 作者:有点甜 -- 发布时间:2018/6/1 15:28:00 -- 如果报错,加入msgbox调试一下错误
http://www.foxtable.com/webhelp/scr/1485.htm
|