Foxtable(狐表)用户栏目专家坐堂 → 外部引用


  共有17789人关注过本帖树形打印复制链接

主题:外部引用

帅哥哟,离线,有人找我吗?
lxl
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/1 22:36:00 [显示全部帖子]

看代码,这是一个托管dll,引用起来很简单了。

QRCodeLib.dll放到foxtable目录下面就能直接用了。

Dim qrCodeEncoder As new QRCodeEncoder

Dim encoding As String= "Byte"

qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE
Din scale As Integer = Convert.ToInt16(3)
qrCodeEncoder.QRCodeScale = scale

Dim version As Integer = Convert.ToInt16(7)
qrCodeEncoder.QRCodeVersion = version

Dim errorCorrect As String = cboCorrectionLevel.Text
if  errorCorrect = "L" Then
    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L
elseif  errorCorrect = "M" Then
    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
elseif errorCorrect = "Q" Then
    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.Q
elseif (errorCorrect = "H" Then
    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.H

End If

Dim image As Image
Dim data  As String = Tables("表A").Current("第一列")

image = qrCodeEncoder.Encode(data)

image.Save("d:\图像\a.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)

 

 

 

大概是这样的 。没调试,可能有些错误


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/1 22:40:00 [显示全部帖子]

哦 仔细看了一下。 cboCorrectionLevel.Text是组合框 让你选纠错水平的  这里可以去掉

 

 

为了理解 我把代码简化一下:

Dim q As new QRCodeEncoder

q.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE
q.QRCodeScale = 3

q.QRCodeVersion = 7

q.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
Dim image As Image
Dim data  As String = Tables("表A").Current("第一列")

image = q.Encode(data)

image.Save("d:\图像\a.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)

 


 


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 8:39:00 [显示全部帖子]

呵呵 看4楼  

要添加一下引用


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 9:03:00 [显示全部帖子]

是命名空间的事情。你把dll发上来,把命名空间也导入就可以了


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 10:08:00 [显示全部帖子]

呵呵 去上班走的太急,9楼没说清楚:我说把dll传到论坛上来,帮你看看命名空间是什么。

 

我刚在codeproject上面下了一份源码,看了一下。

命名空间是ThoughtWorks.QRCode.Codec

你试试下面代码对不对,对的话就不用传你的文件了

Dim q As new ThoughtWorks.QRCode.Codec.QRCodeEncoder

q.QRCodeEncodeMode = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE
q.QRCodeScale = 3

q.QRCodeVersion = 7

q.QRCodeErrorCorrect = ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M
Dim image As Image
Dim data  As String = Tables("表A").Current("第一列")

image = q.Encode(data)

image.Save("d:\图像\a.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)

 

[此贴子已经被作者于2010-7-2 10:09:00编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 12:17:00 [显示全部帖子]

看了一下 。还是codeproject上面的源码生成的dll

可能又有人下载了那个源码,把原来的命名空间ThoughtWorks.QRCode.Codec给改了一下。

添加引用就可以了。命名空间比较简单,不用加别名了。

不过代码要改:

 

Dim q As new QRCodeLib.QRCodeEncoder

q.QRCodeEncodeMode = QRCodeLib.QRCodeEncoder.ENCODE_MODE.BYTE
q.QRCodeScale = 3

q.QRCodeVersion = 7

q.QRCodeErrorCorrect = QRCodeLib.QRCodeEncoder.ERROR_CORRECTION.M
Dim image As Image
Dim data  As String = Tables("表A").Current("第一列")

image = q.Encode(data)

image.Save("d:\图像\a.jpg", System.Drawing.Imaging.ImageFormat.Jpeg)


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 12:23:00 [显示全部帖子]

下面是原作者的。上面的是你传的。

可能嫌原来的命名空间太长,给改短了。不过还留了两个ThoughtWorks 没改。


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 12:36:00 [显示全部帖子]

可以这么理解。

 

比如

一班有一个同学叫张三

二班有一个同学叫张三  这样就会有冲突。

所以都必须写上命名范围

一班.张三

二班.张三

 

不过这里的一班  二班不是文件名。而是代码里面规定好的一个命名空间。

所以让你传文件,才能知道这个命名空间具体是什么。


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 12:42:00 [显示全部帖子]

以下是引用狐狸爸爸在2010-7-2 12:40:00的发言:

我去下载这段源码,给foxtable加上二维码功能

 

图片点击可在新窗口打开查看

呵呵  不知道你找到没。

http://www.codeproject.com/KB/cs/qrcode.aspx


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2010/7/2 12:51:00 [显示全部帖子]

那个源码 不知道为什么转换成VS2008 就提示一大堆错误。

不过他的实例程序 下面能找到编译好的dll

QRCode\QRCodeSampleApp\bin\Release

下面有一个 ThoughtWorks.QRCode.dll 可以用

 


 回到顶部
总数 11 1 2 下一页