Funktionen aus DLL auslesen

Anwendungen, Tools, Userlibs und anderes nützliches.
Robin
Beiträge: 26
Registriert: 29.09.2004 13:40
Wohnort: Neuravensburg (Am Bodensee)
Kontaktdaten:

Funktionen aus DLL auslesen

Beitrag von Robin »

Hi, ich hab ein kl. programm geschrieben, dass aus kleinen Dll´s (max.64kb) die Funktionen ausliest und in einem Meldung ausgibt! Villeicht hilft es euch irgentwie. Ich bin grad an einem Update, damit man größere dll´s auslesen kann.



http://www.purezone.de.vu/downloads/dlltool.zip
Robin
Beiträge: 26
Registriert: 29.09.2004 13:40
Wohnort: Neuravensburg (Am Bodensee)
Kontaktdaten:

Beitrag von Robin »

Okay, das ging schnell! Ich hab jetzt das ein Update! Jetzt kann man weit aus größere Dll´s laden! URL siehe oben! :D
Benutzeravatar
KeyKon
Beiträge: 1412
Registriert: 10.09.2004 20:51
Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit)
Wohnort: Ansbach
Kontaktdaten:

Beitrag von KeyKon »

Toter Link? :?

KeyKon
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Sry, find das Programm irgendwie... nun ja... ehm... um es kurz und schmerzlos zu sagen: billig. Wie wär es wenn du statt einer Messagebox ein IconListView verwenden würdest? Und wie wäre es, wenn du eine Option anbieten würdest die Funktionen in eine TXT Datei auszulagern?
Bild
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag von Kekskiller »

Naja, ich weiß nicht, ob so ein Tool bei einem solch kleinen Umfang sinnvoll
wäre... Das kann man sich auch mit ein paar Zeilen per Debug zusammen-
schustern. Da find ich den Lib Explorer von meiner Bonsai Ide schon viel schicker ^_^ .
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Nana, jetzt macht sein Programm doch nicht gleich so runter. Das ist wahrscheinlich das erste kompliziertere (mit Binaries usw.) was er geschrieben hat und er freut sich tierisch darüber, nehmt ihm doch nicht die Lust daran.

@Robin: Weiter so :allright:, du weißt ja jetzt wo du ansetzen musst ;)
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
KeyKon
Beiträge: 1412
Registriert: 10.09.2004 20:51
Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit)
Wohnort: Ansbach
Kontaktdaten:

Beitrag von KeyKon »

Die 1.0-Version ist gemeingefährlich(Zu viele Dll einträge und man kann nicht mehr auf den OK-Knopf drücken :lol: )
1.1 ist schon wesentlich besser! Tipps:
-List-Gadget 10Pixel höher
-Eine anzeige welche DLL gerade geladen ist

KeyKon
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag von Kekskiller »

Code: Alles auswählen

#OpenButton = 0
#FunctionList = 1
Global lastlib$

If OpenWindow(0, 0,0, 320,256, #PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget, "Library Explorer")
  If CreateGadgetList(WindowID())
    
    ListIconGadget(#FunctionList, 5,5, 310,223, "Name", 190, #PB_ListIcon_FullRowSelect|#PB_ListIcon_GridLines)
      AddGadgetColumn(#FunctionList, 1, "Adresse", 100)
    
    ButtonGadget(#OpenButton, 5,233, 80, 18, "Open")
    
  EndIf
  Repeat
    event = WaitWindowEvent()
    Select event
      Case #PB_Event_Gadget
        Select EventGadgetID()
          Case #OpenButton
            file$ = OpenFileRequester("Select a Library", lastlib$, "Library (*.dll)|*.dll", 0)
            If FileSize(file$) >= 0
              If OpenLibrary(0, file$)
                lastlib$ = file$
                ClearGadgetItemList(#FunctionList)
                ExamineLibraryFunctions(0)
                While NextLibraryFunction()
                  AddGadgetItem(#FunctionList, -1, LibraryFunctionName() + Chr(10) + Str(LibraryFunctionAddress()))
                Wend
                SetWindowTitle(0, GetFilePart(file$) + " - Library Explorer")
              EndIf
            EndIf
        EndSelect
    EndSelect
  Until event = #PB_Event_CloseWindow
EndIf
Vielleicht nützt es was :wink: .
Robin
Beiträge: 26
Registriert: 29.09.2004 13:40
Wohnort: Neuravensburg (Am Bodensee)
Kontaktdaten:

Beitrag von Robin »

Danke für eure Kritik, ich werde an einem weiteren Update arbeiten, in dem eure vorschläge zu finden sind! :D
Antworten