DLL Einbinden

  • Hallöchen, Liebe Community! :)


    und zwar hab ich die Frage, wie ich DLL einbinden kann ohne die mit zuliefern das soll heißen



    nur die EXE und z.b meine DLL muss ich nicht mit Liefern Danke im voraus ! :)

  • oder du kannst kein VB :) und kannst selber kein Deutsch und kannst nicht lesen.



    EDIT: #.blue



    Mert ich meine damit, das ich nur die EXE schicken muss, und nicht meine DLL dazu das alles Funktioniert.

  • oder du kannst dich einfach nicht formulieren und erwartest dass wir hieroglyphen lesen können.
    hat wohl keine hilfe nötig,
    ¯\_(ツ)_/¯

    Naja, ich glaub oder eher ich denke Mert hätte es Verstanden ;) dann schreib du doch mal, wie du es ANGEBLICH schreiben würdest:)




    Keine Ahnung was das für eine EXE ist, aber wenn da die DLL benötigt wird, musst du sie mit reinpacken, ansonsten kann es sein, dass es nicht richtig funktioniert.

    richtig....wenn ich sie reinpacke ist sie nicht drine...da muss irgendwie noch ein Code hatte den mal aber nicht mehr.

  • Inwiefern ist sie denn nicht drinnen, du hast eine .exe Datei und eine .dll Datei, du packst beide in einen Ordner, oder habe ich da was falsch verstanden.
    Wenn die .exe mit der .dll "zusammenarbeitet" muss die .dll drinnen sein.

  • Ich denke @Rockstar* kann dir da helfen

    20V MEDIA NETWORK

    We are processing more than 1 PB of critical data for our international customers every day and deliver it at speeds of up to 100 GBit/s.

    Cost-effective, lightning fast and available at any time.

  • Inwiefern ist sie denn nicht drinnen, du hast eine .exe Datei und eine .dll Datei, du packst beide in einen Ordner, oder habe ich da was falsch verstanden.
    Wenn die .exe mit der .dll "zusammenarbeitet" muss die .dll drinnen sein.

    Nein sie muss nicht dabei sein, mit ein Spezielen Code muss das nicht, hatte es schonmal die DLL soll sozusagen in der EXE intigriert sein.

  • Ich verstehe nicht ganz was du mit Liefern beschreiben möchtest. Aber ich glaube du meinst, dass keine .DLL Datei mit der Executable (.EXE) veröffentlicht werden soll, oder? Dass die Executable (.EXE) alleine im Ordner liegt ohne weitere Dateien? :P Ich weiß nicht weshalb man sowas tun sollte - Ein Developer schießt sich damit nur selber ins Bein.


    Der leichteste Weg ist eine SLL, Static Link Library. Solltest du eine SLL benutzen kannst du e.g keine Updates/Patches releasen für die Funktionen der SLL-Datei. Bei Dynamic Link Libraries (DLLs) hast du eben den Vorteil dass du Updates/Patches ez bereitstellen/veröffentlichen kannst. Du musst nicht die komplette Executable (.exe) Datei austauschen. Du könntest natürlich auch die Executable (.exe) öffnen & den neuen Code per Binary-Methods patchen/hinzufügen, aber ist unnötig da es zu viel Zeit benötigt & zu einem hohen Risiko von Fehlern beisteht.


    Solltest du C, C++ oder Ada nutzen:

    • Benutz eine SSL (Static Link Library)


    Für C# kannst du ILMerge herunterladen. Solltest du Java (JNI) verwenden müsstest du dir ein Assembly Plugin dafür suchen, aber sei gewarnt bei Java führt dies zu einem "Break" von Java-signierten Libraries - Einzige Lösung in meiner Java-Kenntniss wäre: Self-Zipped Executable.


    Bei ILMerge ist die Voraussetzung dass die komplette Anwendung in managed code geschrieben worden ist, also keine Mischung von mehreren Sprachen wie z.B. C, C++ oder Ada usw. (unmanged code languages).



    MfG,
    Rockstar *
    ---------------------------------------------------------
    A C/C++ Programmer & Verilog Describer --
    ---------------------------------------------------------

  • Kannst ja dein Programm ne dll extrahieren lassen. Speicher die gewünschte dll als string im base 64 format und prüfen bei programmstart vor dem einbinden ob sie existiert. Wenn nichr dann erstell sie