2012-04-29 122 views
2

我一直在尋找一種使用VB.Net創建QR碼的方法,但我正在圍繞着一圈。我發現了一些樣本,但他們使用C#。另外閱讀關於ZXing庫,但我不知道如何引用它(或參考)。你可以建議一個教程(對於完整的初學者)如何去尋找一個開源的庫,並將其引用到一個新的VB.Net項目中?在VB.Net中集成一個QRCode庫

到目前爲止,我得到的最接近的是這樣的: http://www.codeproject.com/Articles/258779/Just-launched-new-open-source-project-QrCode-Net-a

和樣品3似乎適用於我,但我不知道是怎麼到控件添加到工具箱。示例代碼使用C#。

+0

或者,是否有可能以某種方式使用Google API來創建qr代碼。我想知道是否可以加載如下網址:http://chart.apis.google.com/chart?cht=qr&chs=300x300&chl=Hello+World ,並將其顯示在準備好的表單上打印。 – Osprey 2012-04-29 07:55:24

回答

0

好的,所以我有點解決了這個問題。這不是理想的,但它很簡單,它的工作原理。使用谷歌的在線API QR碼服務和URL圖像的這篇文章中描述抓住一個組合我所做的是:

http://forums.asp.net/t/631768.aspx/1

使用上述文章中介紹的功能,我打開這個網址:

http://chart.apis.google.com/chart?cht=qr&chs=300x300&chl=Hello+World

用我的字符串改變「Hello + World」。我將生成的圖像設置爲圖片框,然後我可以根據需要做任何事情。

唯一的缺點是它正在處理的機器需要永久的互聯網連接。

我發佈了這個答案,以防萬一別人有我自己的問題,永久互聯網連接誰不是問題。

我仍然希望有人可以幫助我一個「離線」版本,可以在一個孤立的PC上工作。

0

您可以在VB項目中使用C#庫,並將其作爲現有項目添加到解決方案中。然後右鍵單擊您的VB項目並選擇「添加引用」。 QRCODE庫應該列在「項目」選項卡上。

您也可以跳過將項目添加到您的解決方案,只需添加對DLL庫的引用(如果它們提供的話)。但是如果你這樣做,你將無法瀏覽C#代碼。

+0

謝謝StevenDotNet。我按照你的建議添加了這些項目並添加了引用,但是我仍然得到類型錯誤「名稱空間'Gma.QrCodeNet'中不存在類型或名稱空間名'Encoding'(缺少程序集引用?」) – Osprey 2012-04-30 06:53:43

+0

通常做一個(重)建立的C#庫將解決這個問題。 – 2012-04-30 12:16:39

+0

我快速瀏覽了原始文章中的圖書館,並且堅持使用Google的API或查找簡化的圖書館。這需要你從它提供的字節數組中創建你自己的圖形,而不是隻給你適當的位圖。 – 2012-04-30 12:39:39

0

不,我跟你做的過程中的任何問題,但是這可能是有點不太代碼:

'fn: virtually unique file name based on date and time 
Dim fn As String = "QR_" & String.Format("{0:MMddyyhhmmss}", DateTime.Now()) & ".png" 
Dim txt As String = "Hello World" 

Try 
    Dim client As New System.Net.WebClient 
    client.DownloadFile("http://chart.apis.google.com/chart?cht=qr&chs=300x300&chl=" & txt, Server.MapPath("~/TempFiles/" & fn)) 
    client = Nothing 
Catch 
End Try 

'I have an <asp:label> on my form so I can quickly test if the file downloaded. 
lblTest.Text = "<a href='~/TempFiles/" & fn & "' target='_blank'>Success?</a>" 

嗯,我在VB寫了這對ASP.NET。如果有人試圖在網站上做到這一點,這可以幫助。