QR Code Generator

  • Bruce Armstrong
  • Bruce Armstrong's Avatar Code Author
  • Online
More
3 years 6 months ago - 8 months 1 week ago #341 by Bruce Armstrong
Bruce Armstrong created the code: QR Code Generator
This code sample uses the open source QRCoder .net assembly ( github.com/codebude/QRCoder ). I created a wrapper assembly for that using SnapDevelop, and then a demo project in PowerBuilder 2019 R3 showing how it's used.

Update 07/04/2023: Updated to include sample built with PowerBuilder/SnapDevelop 2022

This message has attachments files.
Please log in or register to see it.

Last Edit: 8 months 1 week ago by Bruce Armstrong. Reason: Updated for PowerBuilder 2022

Please Log in or Create an account to join the conversation.

More
7 months 2 days ago - 7 months 2 days ago #519 by Fabrizio Viscardi
Fabrizio Viscardi replied the code: QR Code Generator
Hello Gil,
to check your problem I focused my attention on 2019R3 version of QrCodedemo because I have a computer without IDE with 2019R3 Runtime but not any with the 2022R3 version (every PC have IDE installed).
I have created 32 and 64 bits qrcode.exe and I have installed them in such computer with Powerbuilder 2019R3 Runtime (without IDE) + Net Core Runtime 2 + Net Core Runtime 3 + Net Core Framework 4.8 + Windows desktop Runtime 6.
Both exe worked perfectly.
In the folder of destination PC you need only: qrcode64.exe , qrcode64.xml, qrcodedemo.pbd, qrCodeGenerator.dll, qrCoder.dll

But to complete my answer I have added :
" ls_version = lnv_assembly.GetDotNetCoreVersion( )
messagebox ("of_createondemand", ls_version ) " in <<of_createondemand>> function, just to see the version of .Net used.
At runtime (in the P.C. above mentionned):
- running "qrcode32.exe" the version is ".NET Core Runtime (x86) vers. 3.1.9"
- running "qrcode64.exe" the version is "Windows Desktop Runtime (x64) vers. 6.0.11"

I am sorry but I haven't any PC with Pb 2022 R3 runtime installed, without IDE.
Last Edit: 7 months 2 days ago by Fabrizio Viscardi.

Please Log in or Create an account to join the conversation.

More
7 months 3 days ago #518 by Marcelo Gil
Marcelo Gil replied the code: QR Code Generator
Hello Bruce! I need your help please
I downloaded the QR code generator project and from the PB IDE it works fine generating the QR code. When I deploy the exe to the PC where the PB IDE is not installed, it fails to create the wrapper object that calls the ino_QrCoder.getQrAsBlob method Error: "Object instance does not exist"
On this PC I installed .net 6 runtime and .net framework 4.8 without solving the case. Also copy all the project dlls and the entire BIN folder. What could be wrong?

Please Log in or Create an account to join the conversation.

  • Bruce Armstrong
  • Bruce Armstrong's Avatar Code Author
  • Online
More
7 months 1 week ago #516 by Bruce Armstrong
Bruce Armstrong replied the code: QR Code Generator
>>Can this wrapper be imported

Yes

>>and does it work in version P2022 R3?

Yes

Please Log in or Create an account to join the conversation.

More
7 months 1 week ago #515 by Marcelo Gil
Marcelo Gil replied the code: QR Code Generator
Hello Bruce! Can this wrapper be imported and does it work in version P2022 R3?

Please Log in or Create an account to join the conversation.

  • Bruce Armstrong
  • Bruce Armstrong's Avatar Code Author
  • Online
More
7 months 3 weeks ago #513 by Bruce Armstrong
Bruce Armstrong replied the code: QR Code Generator
>>But with yours it seems impossible to set the size (with & height), the margin,

For that what I was thinking you could do is put the image in picture in a datawindow. You could then adjust the margins around the picture and also resize the picture. The main issue is that the SetPicture method that I'm using for the PowerBuilder picture control isn't available for a picture object in a datawindow. What you would need to do is save the blob out to a temporary file and then point the picture control in the datawindow to that file.

>>the error level specific for QR code.

Right now I hard code the value for the error level. What you could do is make it a parameter for the method and pass in the value you want.

QRCodeData qRCodeData = qRCodeGenerator.CreateQrCode(qrText, QRCodeGenerator.ECCLevel.Q);

The valid values are L, M, Q or H. github.com/codebude/QRCoder/wiki/How-to-use-QRCoder

I put making those changes (or something similar) on my to do list. But you're likely to get to it yourself quicker than I will if you're comfortable making the changes.

Please Log in or Create an account to join the conversation.

More
8 months 1 day ago #512 by Fabrizio Viscardi
Fabrizio Viscardi replied the code: QR Code Generator
Hello Bruce,
thanks for your QR Code Generator. I have compiled, 64 bits, and it works fine, creating correct code also for € (eur) symbol, impossible to have in many other qr code generators.
But with yours it seems impossible to set the size (with & height), the margin, the error level specific for QR code.
Maybe is possible to change the margin? Is it possible to know the Error Level established in the .dll library ?
Thank you very much
Fabrizio Viscardi (Italy)

Please Log in or Create an account to join the conversation.

  • Bruce Armstrong
  • Bruce Armstrong's Avatar Code Author
  • Online
More
1 year 3 months ago #460 by Bruce Armstrong
Bruce Armstrong replied the code: QR Code Generator
Remove the second line in the open script. Apparently I am referencing a method there that existed at the time I wrote the demo, but no longer exists in more recent versions of PowerBuilder. In particular, the line you want to remove is:

inv_generator.of_seterrorhandler( this, 'assemblyerror')

Please Log in or Create an account to join the conversation.

  • Bruce Armstrong
  • Bruce Armstrong's Avatar Code Author
  • Online
More
2 years 10 months ago #386 by Bruce Armstrong
Bruce Armstrong replied the code: QR Code Generator
Hard to tell you what is wrong without a specific error message. For what it's worth though if you try to import a .Net Core library and you've selected .Net Framework as the Framework Type you'll get an error like the attached.

Please Log in or Create an account to join the conversation.

More
2 years 10 months ago #384 by alberto cardenas
alberto cardenas replied the code: QR Code Generator
Hi Bruce,
Thank you the code.


I download the code I try to run in PW 2019 and it marks an error in nvo_qrgenerator it tells me that dotnetobject is not there, I do not know if I am missing something to do, thank you very much in advance

Please Log in or Create an account to join the conversation.

Moderators: Appeon Administrator