VBA nach Autoit - JAB-Code

  • Hallo!

    Ich versuche gerade, einen VBA-Code nach AutoIt umzuschreiben. Jedoch stoße ich hier an meine Grenzen. Wie müsste das in AutoIt aussehen?? Vielleicht kann man das auch ohne Excel umschreiben? SetCurrentDirectory und LoadLibrar sind kein Problem. Aber ab jabPic.InputString komme ich nicht weiter (da muss man ja Type jabDTO und Dim jabPic As jabDTO umschreiben können). Danke!


    JAB-Code-Projekt: https://github.com/jabcode/jabcode

    Gruß, René

  • Hi Rene,

    Aber ab jabPic.InputString komme ich nicht weiter (da muss man ja Type jabDTO und Dim jabPic As jabDTO umschreiben können).

    ich habe das so gelöst:

    Die GUI drumrumstricken musst du selbst! 8o

  • Hmmm, bei mir schon...

    Setze mal

    #AutoIt3Wrapper_UseX64=n

    vor dein Script, es wird eine 32Bit-Dll verwendet.

    Das AutoItscript muss ins Verzeichnis der DLL

    DEINVERZEICHNIS\jabcode\jabcodeWrapper\dlls32


    /EDIT

    In der Konsole müsste es so aussehen:

    @@ Debug(7) : $ret = 1

    >Error code: 0

    @@ Debug(12) : $dll = 1

    >Error code: 0

    @@ Debug(39) : $jabPic.InputString = 0x00E73F80 //oder anderer pointer

    >Error code: 0

    @@ Debug(46) : $jabPic.FileName = 0x00E76360

    >Error code: 0

    @@ Debug(55) : $ret =

    >Error code: 0

    +>15:08:19 AutoIt3.exe ended.rc:0

    +>15:08:19 AutoIt3Wrapper Finished.

  • Deine GUI ist unerheblich!

    Wichtig ist erstmal, dass das von mir erstellte Script, welches ein Ergebnis erzeugt, auch bei dir läuft!

    Also kopiere bitte das AutoItscript aus diesem Post in das Verzeichnis, in dem die jabwrapper.dll liegt. Günstigstenfalls nimmst du das Verzeichnis, von dem du das gezippte Beispiel aus dem Startpost verwendet hast!

    Dann bitte die Ausgabe der Konsole posten.

  • Das funktioniert schon. Aber ich habe die ganzen JAB-Code-Steuer-Dateien einfach ins Hauptverzeichnis kopiert und dort versteckt, dann funktioniert es auch. Hab es auch schon erfolgreich in mein Projekt eingebaut. Danke!!!

  • Alina,

    bitte diesen Müll löschen, bevor da noch jemand auf die Idee kommt, das zu testen und hier Diskussionen aufkommen, warum und wieso das nicht funktioniert.

    mumpel ,

    Excel stürzt bei mir ab, wenn ich das VBA-Script mehrfach aufrufe, d.h. anderen Text eingeben und den Button klicken führt zum Absturz.

    Auch der (beim ersten mal) erstellte Code sieht anders aus als bei meinem AutoItscript.

    Aber....mein Script erstellt den gleichen Barcode wie die die Website, folglich ist im VBA-Code irgendetwas faul?!

    Kannst du das bitte verifizieren?

    Auch die zusätzlich erstellbaren Symbole sind in meinem AutoItScript nicht integriert, wenn du das nicht selbst hinbekommst, bitte kurze Info!

    ciao
    Andy


    "Schlechtes Benehmen halten die Leute doch nur deswegen für eine Art Vorrecht, weil keiner ihnen aufs Maul haut." Klaus Kinski
    "Hint: Write comments after each line. So you can (better) see what your program does and what it not does. And we can see what you're thinking what your program does and we can point to the missunderstandings." A-Jay

    Wie man Fragen richtig stellt... Tutorial: Wie man Script-Fehler findet und beseitigt...X-Y-Problem

    2 Mal editiert, zuletzt von Andy (28. September 2023 um 04:37)

  • Kannst du das bitte verifizieren?

    Das kann ich nicht. Bei mir funktioniert das Excel-Projekt. Welche meiner Testprojekte hast Du ausprobiert? http://www.rholtz-office.de/counters/getfile.php?id=61

    Nimm bitte die "CreateQRCodeWithVBA.xlsm", vorher aber die Steuerdateien installieren ("MSCOMCT2.OCX", wenn bei Dir nicht vorhanden. sevcmd40 und sevoutbar4). VBA-Kennwort ist ein kleines a. Die "2FA_CodeTest" scheint nicht mehr richtig zu funktionieren, da schaue ich mal bei Gelegenheit nach.

    Auch die zusätzlich erstellbaren Symbole sind in meinem AutoItScript nicht integriert

    Welche meinst Du?

  • Welche meiner Testprojekte hast Du ausprobiert?

    Deine jabcode.zip aus dem Startpost. Andere Dateien wurden bisher nicht gepostet.

    Zitat

    Welche meinst Du?

    JAB Code

  • Doch, sind drin. $jabPic.SymbolVersionsX = 1 und $jabPic.SymbolVersionsY = 1

    dann erstelle doch mal das Beispiel vom Bild von der Website aus Post#11 mit dem AutoItscript, geht das bei dir?

  • Kann ich machen. Sieht auf dem ersten Blick genau so aus wie auf der Webseite.

    Ich habe allerdings den Code etwas angepasst.

    Code
        $jabPic.ColorNumber = GUICtrlRead($jabCodeColorNumber)
        $jabPic.ModuleSize = GUICtrlRead($jabCodeModulSize)
        $jabPic.SymbolVersionsX = GUICtrlRead($jabCodeSymbolX)
        $jabPic.SymbolVersionsY = GUICtrlRead($jabCodeSymbolY)
        $jabPic.SymbolEccLevelsNumber = GUICtrlRead($jabCodeErrorlevel)
  • Hast du dir mal das Bild oben in meinem Post angeschaut?

    Mit den von mir markierten secondary Symbolen?! Und das dazu passende Ergebnis unten im Bild?

    Offensichtlich nicht.... :( :/

  • Ja genau, klick da mal drauf, also auf die grünen Vierecke, dann kannst du das zweite, dritte, vierte, bis zum x-ten zusätzlichen Symbol aktivieren, und beim 2. und 7. aktivierten Symbol kommt dann so etwas raus:

    ciao
    Andy


    "Schlechtes Benehmen halten die Leute doch nur deswegen für eine Art Vorrecht, weil keiner ihnen aufs Maul haut." Klaus Kinski
    "Hint: Write comments after each line. So you can (better) see what your program does and what it not does. And we can see what you're thinking what your program does and we can point to the missunderstandings." A-Jay

    Wie man Fragen richtig stellt... Tutorial: Wie man Script-Fehler findet und beseitigt...X-Y-Problem

    Einmal editiert, zuletzt von Andy (28. September 2023 um 17:39)