Example von AutoIt kompilieren - LINKER ERROR

  • Hallo liebe Community!
    Ich wollte AutoIt für ein Schulprojekt als GUI nutzen und im Background C-Code laufen lassen.

    Jedoch bekomm ich nur, wenn ich die Example Datei von AutoIt für die beiden IDE's Dev-Cpp und VS laufen lasse, bei beiden Linker errors bzw ich kanns einfach nicht kompilieren... Bin echt am Verzweifeln :( , weis einer Rat?

    Greetz

    Deshoax

  • Moinsen,

    Du kannst keinen AutoIt Code mit einem C-Compiler kompilieren und natürlich auch nicht mit einem Linker verlinken, da AutoIt lediglich dein Script zu den Resourcen des (AutoIt-)Interpreters hinzufügt und keine (COFF) Objektdatei erzeugt, die man verlinken könnte.

    Was Du aber machen könntest, wäre deinen C-Code in eine DLL zu packen, dein AutoIt-GUI-Script mit AutoIt zu "kompilieren" und dann den C-Code mit DllCall aufzurufen, wenn Du ihn benötigst.


    Gruß
    Greenhorn


  • Ja, diese Möglichkeit gibt es auch noch. ;)

    Aber in Anbetracht des Aufwandes der beiden Alternativen, würde ich dir empfehlen, deine GUI gleich in C zu schreiben.


    Gruß
    Greenhorn


  • Nein, das ist nicht so richtig das, was ich suche bzw eine Antwort drauf brauche.

    Es gibt, wenn man sich AutoIt installiert hat :P, einen Ordner der heißt AutoItX.
    In diesem Ordner gibt es die wichtige AutoItX3.dll und zwei weitere Ordner. Ich brauche den Ordner StandardDLL.
    Darin sind zwei Ordner, der eine für Dev-Cpp, der andere fürs Visual Studio von Mircosoft.

    In dem VC6 Ordner(Microsoft) ist ein Example-C-Code für Funktionen. Das Beispiel SOLL Notepad öffen, da was reinschreiben usw...
    Das TUT es aber NICHT.

    Wenn ich die geforderten Dateien einbinde, Siehe --> http://www.mmowned.com/forums/general…-c-programs.htm , bekomme ich 3 Errors, die ich wahrscheinlich auf den Linker zurückführe. Es geht in Dev-Cpp nicht und auch nicht im Visual Studio.

    Das meinte ich.
    Kann mir da die Community helfen?

    MfG

    Deshoax

  • Aaaaaaaah ... ;)

    In VC ist standardmäßig Unicode eingestellt, das Beispiel ist in ASCII ...

    So lässt es sich kompilieren:

    Spoiler anzeigen


    Gruß
    Greenhorn


  • Mein HELD!

    Es funktioniert!
    Also muss ich immer ein L vor den Anführungszeichen setzen, wenn ein String kommt?

    Danke Danke Danke!!!

    Du rettest mein Projekt ;)

  • Jedoch habe ich jetzt eine weitere Frage:

    Wenn ich das Beispiel kompiliere, läufts.

    Aber wie kriege ich jetz die GUI-Funktionen von AutoIt hin???

  • Also muss ich immer ein L vor den Anführungszeichen setzen, wenn ein String kommt?


    Nur, wenn Du in Unicode schreiben möchtest. Du kannst es aber auch portabel schreiben, sodass man es sowohl in ASCII als auch in Unicode kompilieren kann.

    Spoiler anzeigen

    Aber wie kriege ich jetz die GUI-Funktionen von AutoIt hin???


    So wie es scheint, gibt es keine AU3_GUI... Funktionen in der DLL.
    Die Funktionen sind in der autoit3.h aufgelistet.

    EDIT:
    Dev-Cpp solltest Du nicht mehr nutzen, da es schon seit längerer Zeit nicht mehr weiterentwickelt wird und Bugs enthält.
    Nimm lieber Code::Blocks, diese IDE kannst Du unter Win/Linux/Mac benutzen


    Gruß
    Greenhorn


    Einmal editiert, zuletzt von Greenhorn (19. Juni 2009 um 19:24)

  • Aber wie kriege ich jetz die GUI-Funktionen von AutoIt hin???

    Die gibt es nicht. Die DLL enthält nur die Automatisierungsfunktionen von AutoIt, nicht aber den GUI-Teil. Außerdem kannst du in C(++) die ganzen UDFs nicht nutzen.
    Für C++ gibt es einige GUI-toolkits, wie QT, wxWidgtes, Ultimate++ usw, die das Erstellen von GUIs vereinfachen (sollen). Hier sind noch ein paar mehr aufgelistet.