Aktuelle Zeit: 18.06.2018 13:27

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 49 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5  Nächste
Autor Nachricht
 Betreff des Beitrags: PureDLLHelper Windows 1.2 (x86 and x64)
BeitragVerfasst: 28.01.2011 01:26 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:57
Wohnort: Berlin
12.02.2012
Update
Bugfixrelease

02.02.2011
Update
Erkennung der Anzahl an Parametern bei StdCall DLLs
verbessert.

29.01.2011
Update
+ Speichern von Source
+ Speichern und laden von Project
+ Erkennung von x86 und x64
+ diverse Kleinigkeiten geändert
+ viele Fehler beseitigt

Im download befinden sich die x86 und x64 Version für Windows.

Bilder sagen mehr als 1000 Worte:
Bild
Bild
Bild

Download

Ich hoffe, Ihr habt Spaß und seid mir nützlich beim Bughunting :mrgreen:

Gruß
Thomas

_________________
PureBasic 5.70 | SpiderBasic 2.10 | Windows 10 Pro (x64) | Linux Mint 19.0 (x64)
"Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei."
Bild


Zuletzt geändert von ts-soft am 03.08.2012 22:51, insgesamt 5-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 02:10 
Offline
Benutzeravatar

Registriert: 23.12.2005 12:41
Wohnort: München
MSCTFIME UI: PureDLLHelper_x68.exe - Systemfehler hat geschrieben:
Das Programm kann nicht gestartet werden, da FTD2XX.dll auf dem Computer fehlt. Installieren Sie das Programm erneut, um das Problem zu beheben.

Diese Fehlermeldung kommt zweimal, ehe sich das Fenster öffnet.
Allerdings wird auch nichts angezeigt im ListView-Gadget.

Die FTD2XX.dll wird bei der zu öffenden DLL (DMX4ALL.dll) mitgeliefert liegt im gleichen Verzeichnis, wie die zu öffnende Dll (DMX4All.dll). Das kopieren in ein Verzeichnis im "Path" z.B. C:\windows\system32\ hat auch nicht geholfen.

Da diese DLL zum Ansteuern eines USB-Devices verwendet wird, ist es möglich, dass die nicht gefundene DLL als Treiber fungiert (kann ich momentan nicht testen, da ich die Hardware nicht griffbereit habe und die Treiber als einzelne Dateien vorliegen ohne Installer) und die DLL schon beim laden darauf zu greifen will?
Zur Benutzung des USB-Gerätes muss man nur die dmx4all.dll laden, weshalb ich der FTD2XX.dll nie Beachtung geschenkt habe.
Falls das irgendjemandem hilft: Hier kann man die Treiber und die DLLs inkl. Sourcen herunterladen: http://www.dmx4all.de//DMX4ALL-PC-Inter ... ce::1.html

Ansonsten funktioniert das Laden von irgendwelchen Windows-DLLs und auch der Code-Generator scheint zu funktionieren.

_________________
BildKarte der Pureboard-Mitglieder


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 02:20 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:57
Wohnort: Berlin
Danke für die Fehlermeldung :D

Ich setze jetzt immer den Pfad zur DLL als aktuelles Verzeichnis, kannst Du bitte mal testen ob es jetzt
funktioniert?

Gruß
Thomas

_________________
PureBasic 5.70 | SpiderBasic 2.10 | Windows 10 Pro (x64) | Linux Mint 19.0 (x64)
"Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei."
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 02:45 
Offline
Benutzeravatar

Registriert: 23.12.2005 12:41
Wohnort: München
Jetzt funktioniert es :)
Aber nur wenn die DLL im gleichen Verzeichnis liegt. Wenn sie nur im "Path" liegt, klappt's nicht.
Wird wohl ne Einschränkung von Windows sein (dachte, es wird automatisch im "Path" nachgesehen, wenn im gleichen Verzeichnis nichts gefunden wird...)

Jetzt noch etwas, was mir aufgefallen ist. In der Doku zur DLL steht
Zitat:
Es werden zwei Funktionsgruppen von der DLL bereitgestellt, die sich durch ihre
Definition unterscheiden. Die Funktionen mit „__“ beginnend sind mit __stdcall
aufzurufen. Funktionen ohne „__“ in der Bezeichnung besitzen keine definierte
Aufrufkonvention und sind aus Kompatibilitätsgründen weiterhin enthalten.

Aber dein Programm zeigt auch bei den __-Funkionen sdtcall an.
Ist das der Defaultwert bei dir (falls nix anderes gefunden wird)?

_________________
BildKarte der Pureboard-Mitglieder


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 02:54 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:57
Wohnort: Berlin
TomS hat geschrieben:
Aber dein Programm zeigt auch bei den __-Funkionen sdtcall an.
Ist das der Defaultwert bei dir (falls nix anderes gefunden wird)?

Diese Angabe bezieht sich ja nur auf den Hersteller und hat keine allg. Gültigkeit.
Die Conventionen werden pauschal auf STDCALL (unter x64 auf FASTCALL) gesetzt.
Wenn ich nur 0 Parameter oder keine Auskunft finde, ist es oft CDECL, aber darauf
kann ich mich nicht verlassen.
Ein klick im Header invertiert die Einstellung!

So das man nichts mehr Einstellen braucht, so gut wird es wohl nicht werden können.
Conventionen sind zu setzen und die Anzahl Parameter immer zu prüfen!

Ich kämpfe im moment aber mit den blöden Resourcen :mrgreen:

Danke fürs Feedback.

_________________
PureBasic 5.70 | SpiderBasic 2.10 | Windows 10 Pro (x64) | Linux Mint 19.0 (x64)
"Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei."
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 04:09 
Offline
Benutzeravatar

Registriert: 23.12.2005 12:41
Wohnort: München
ts-soft hat geschrieben:
Ein klick im Header invertiert die Einstellung!
Oha. Jetzt wird überall CDECL anzeigt^^
ts-soft hat geschrieben:
...die Anzahl Parameter immer zu prüfen!
Was meinst du damit? Dass die Werte, die dein Programm liefert nicht stimmen müssen? Es zeigt nämlich immer mindestens 1 an, auch wenn eine Funktionen keinen Parameter erwartet. Aber nur bei der o.g. DLL.
Bei verschiedenen Windows DLLs steht immer mal wieder 0 da.

_________________
BildKarte der Pureboard-Mitglieder


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 04:30 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:57
Wohnort: Berlin
TomS hat geschrieben:
Was meinst du damit? Dass die Werte, die dein Programm liefert nicht stimmen müssen?
So sieht es aus! Ich versuche zwar noch etwas mehr Zuverlässigkeit einzubauen, aber ...
Mit CDECL und FASTCALL versagt das ganze sowieso. Aber ich denke es wird trotz allem nützlich sein :wink:

_________________
PureBasic 5.70 | SpiderBasic 2.10 | Windows 10 Pro (x64) | Linux Mint 19.0 (x64)
"Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei."
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 08:13 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Hab zwar noch nicht getestet, aber sieht vielversprechend aus :D

_________________
BildBildBildBild
Bild | EnableExplicit ist kostenlos und vermeidet Fehler | Gib Goto keine Chance | Schneller als die Telekom erlaubt | Avira? Nein Danke
WinAPI forever | Bei Problemen bitte Beispielcode posten | Mit Adblock werbefrei, schneller und sicherer surfen | brain.exe ist der beste Schutz | Userlibrary ohne Source = NoGo


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 08:44 
Offline
Benutzeravatar

Registriert: 08.09.2004 00:59
Hallo ts-soft,
Feine Sache! Was ich mir noch wünsche:

1) Source Pfad sollte (optional) noch mit angegeben werden können (und automatisch ausgewertet)
=> Oder alternativ: der Funktionsaufruf mit den Parametern von Hand eingetragen werden können.

Vorteil: Das Prototypen wäre sprechender und der Returnwert wäre mit angegeben.
Also statt:
Code:
Prototype  aFunktion(a, b, c, d, e)

so etwas:
Code:
Prototype.b  aFunktion(Window.l, Body$, Title$, Flags.l = 0)

2) Das gleiche gilt für Strukturen (siehe 1) und sehr schön wäre es wenn diese automatisch in PureBasic Strukturen umgewandelt werden)


Wichtig:
Wenn die Funktionen/Strukturen von Hand angepasst werden, sollten diese gespeichert werden (nicht das die Arbeit umsonst war, wenn das ganze nicht in einen Rutsch angepasst wurde). Beim Laden der DLL sollten dann die gespeicherten Werte wieder mit angezeigt werden um daran weiterarbeiten zu können.

DrShrek

_________________
Siehste! Geht doch....?!
PB*, *4PB, PetriDish, Movie2Image, PictureManager, TrainYourBrain, ...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PureDLLHelper Windows (z. Zeit Alpha Test)
BeitragVerfasst: 28.01.2011 09:02 
Offline
Benutzeravatar

Registriert: 11.11.2004 16:13
Wohnort: Magdeburg
Beim Frühstück kurz mit Win7_64 angeschaut: Mit der x86.exe funktionierts, aber mit x64: "0 of 0 functions selected!". Keine Funktion wird angezeigt.
Gruß
Helle


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 49 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye