ich hätte mal eine allgemeine frage ,
Warum kann AHK eine beliebige exe datei ausführen wenn man den dateinamen in .dll ändert
so wird aus xyz.exe z.b xyz.dll und mir run, xyz.dll startet AHK die dll
DLL laden
Moderator: jNizM
-
- Posts: 264
- Joined: 09 Mar 2019, 01:52
- Location: Germany
- Contact:
Re: DLL laden
Ich bin in dem Thema leider nicht so sattelfest. Trotzdem treiben mich ein paar Fragen um, die du mir sicherlich beantworten kannst.
Eine EXE Datei ist ein fertiges Programm, dass man ausführen kann. Wenn es läuft, dann passiert etwas.
Eine DLL ist eine Library, in dem speziellen Fall eine während der Laufzeit dynamisch zuladbare. Wenn diese geladen wird, dann stehen dem Programm (exe) das die Library (dll) lädt die Funktionen zur Verfügung. Ich habe es noch nie gehört, dass man eine DLL starten kann. Es ist ja auch kein Programm.
Was also genau meinst du mit "AHK startet die DLL"? Woran erkennst du das die DLL gestartet ist und damit läuft? Und bist du dir sicher, dass die DLL nicht ne Exe ist die nur jemand als DLL benannt hat und dass es deswegen funktioniert?
Eine EXE Datei ist ein fertiges Programm, dass man ausführen kann. Wenn es läuft, dann passiert etwas.
Eine DLL ist eine Library, in dem speziellen Fall eine während der Laufzeit dynamisch zuladbare. Wenn diese geladen wird, dann stehen dem Programm (exe) das die Library (dll) lädt die Funktionen zur Verfügung. Ich habe es noch nie gehört, dass man eine DLL starten kann. Es ist ja auch kein Programm.
Was also genau meinst du mit "AHK startet die DLL"? Woran erkennst du das die DLL gestartet ist und damit läuft? Und bist du dir sicher, dass die DLL nicht ne Exe ist die nur jemand als DLL benannt hat und dass es deswegen funktioniert?
Re: DLL laden
ok zur Erklärung da diese Funktion scheinbar keiner kennt
2 AHK Dateien um testen
code von A
code von b
nun aus beiden eine exe machen , und jetzt a.exe umbenennen in a.dll
b.exe starten
ich möchte ja wissen warum eine dll startet mit AHK
2 AHK Dateien um testen
code von A
Code: Select all
msgbox , das ist a ich bin eine exe
code von b
Code: Select all
msgbox, ich starte a
run , a.dll
nun aus beiden eine exe machen , und jetzt a.exe umbenennen in a.dll
b.exe starten
ich möchte ja wissen warum eine dll startet mit AHK
verwende AutoHotkey104805 ------------------------UPDATE auf ..1.1.33.02 erfolgreich , jetzt kommen neue Probleme
Re: DLL laden
Eine Datei-Endung macht kein Dateiformat... du hast da keine dll-Datei, sondern eine exe mit irreführender Erweiterung.
Re: DLL laden
Nun, was wenn jetzt im Explorer per default noch die Dateiendung für "Anwendung" ausgeblendet ist, und mit Umbenennung in "a.dll" in Wirklichkeit ein "a.dll.exe" generiert wurde?
Re: DLL laden
Nö, das geht schon mit AHK's Run - du kannst die exe auch mit einer nicht-registrierten Endung wie .helloworld versehen, und es wird noch funktionieren. Das ist halt die Implentation von Run:
Re: DLL laden
Also ist es AHK egal was die Dateiendung ist solange es mal eine exe war !
verwende AutoHotkey104805 ------------------------UPDATE auf ..1.1.33.02 erfolgreich , jetzt kommen neue Probleme
Re: DLL laden
Naja, es ist noch eine exe... nur falsch benannt (Explorer ist da nur pingeliger, wenn es um die ausführung geht, als AHK's Run). Wenn es tatsächlich eine dll wäre, würde es nicht funktionieren, afaik. Sie hätte keinen klaren Startpunkt. Die Dateiformate von exe und dll scheinen allerdings sehr ähnlich zu sein, abgesehen davon.
Aber wie gesagt, es ist nicht die dll-Erweiterung, die hier die Ausführung erlaubt. Es würden auch andere gehen.
Aber wie gesagt, es ist nicht die dll-Erweiterung, die hier die Ausführung erlaubt. Es würden auch andere gehen.
Re: DLL laden
ist eine funktion die es ermöglicht diverse exe in einer ahk zu verbinden falls man sowas mal braucht
verwende AutoHotkey104805 ------------------------UPDATE auf ..1.1.33.02 erfolgreich , jetzt kommen neue Probleme
Re: DLL laden
Was heißt hier verbinden?
Sowas wie https://ahkde.github.io/docs/commands/FileInstall.htm ? Diese Dateien werden allerdings extrahiert bei Ausführung der Hauptdatei (bei Bedarf), soweit ich weiß (ich kompiliere fast nie). Und das geht mit beliebigen Dateiformaten.
Sowas wie https://ahkde.github.io/docs/commands/FileInstall.htm ? Diese Dateien werden allerdings extrahiert bei Ausführung der Hauptdatei (bei Bedarf), soweit ich weiß (ich kompiliere fast nie). Und das geht mit beliebigen Dateiformaten.
Re: DLL laden
hab ich auch noch nicht ausprobiert war bisher nie nötig , exe dateien sind eh immer so voll gepackt mit müll
verwende AutoHotkey104805 ------------------------UPDATE auf ..1.1.33.02 erfolgreich , jetzt kommen neue Probleme
Who is online
Users browsing this forum: Google [Bot] and 6 guests