Seite 1 von 1
mein kleiner "lib searcher" zum library searching
Verfasst: 10.09.2005 15:28
von IcedCoffee
moin
ich brauche eine funktion die ich bis jetzt nur in php gefunden habe
kein prob eigentilich da bei php die funktionen alle in *.dll's sind
so jetzt frage ich mich aber in welcher *.dll meine funktion ist
also habe ich einen "lib searcher" programmiert
der geht aber irgent wie nicht da er scheinbar nix macht also eigentlich müsste mindesten einmal ein MessageRequester() öffnen aber das passirt nicht
Code: Alles auswählen
exit.b = 0
libnr.l = 0
Repeat
If ExamineDirectory(0, "E:\Suchmachine\ext", "*.dll")
If NextDirectoryEntry() = 1
OpenLibrary(libnr, DirectoryEntryName())
If IsFunction(libnr, "parse_url") ; http://www.php.net/manual/de/function.parse-url.php
MessageRequester("lib searcher", "die funktion ist in der lib"+Chr(10)+Chr(10)+DirectoryEntryName())
exit = 1
EndIf
ElseIf NextDirectoryEntry() = 0
exit = 1
EndIf
Else
exit = 1
EndIf
libnr = libnr +1
Until exit = 1
MessageRequester("lib searcher", "The End")
weiss einer warum?
ps: die funktion die ich suche heisst bei php
parse_url
Verfasst: 11.09.2005 23:41
von IcedCoffee
weiss keiner eine lösung?
oder kan mir keiner eine alternative zu der funktion "
parse_url" sagen?
Verfasst: 12.09.2005 01:12
von zigapeda
doch ich weiß glaub ich eine.
dein programm führt nach jedem schleifendurchlauf erneut examinedirectory aus d.h. es fängt jedes mal von vorne an und sucht in der 1. dll nach dem befehl wenn es den nicht findet sucht es erneut in der 1. dll.
Code: Alles auswählen
exit.b = 0
libnr.l = 0
If ExamineDirectory(0, "E:\Suchmachine\ext", "*.dll")
Repeat
If NextDirectoryEntry() = 1
OpenLibrary(libnr, DirectoryEntryName())
If IsFunction(libnr, "parse_url") ; http://www.php.net/manual/de/function.parse-url.php
MessageRequester("lib searcher", "die funktion ist in der lib"+Chr(10)+Chr(10)+DirectoryEntryName())
exit = 1
EndIf
libnr = libnr +1
ElseIf NextDirectoryEntry() = 0
exit = 1
EndIf
Until exit = 1
EndIf
MessageRequester("lib searcher", "The End")
Verfasst: 12.09.2005 02:47
von IcedCoffee
kan sein
aber ich habe jetzt einen anderen fehler gefunden
- PB kan nicht mehr als 11 libs öffnen bzw. darf der lib name nicht höher als 10 sein
weil bei dem code beendet sich das prog einfach
Code: Alles auswählen
exit.b = 0
libnr.l = 0
If ExamineDirectory(0, "E:\Suchmachine\ext", "*.dll")
Repeat
DirectoryEntry = NextDirectoryEntry()
If DirectoryEntry = 1
OpenLibrary(libnr, DirectoryEntryName())
If IsFunction(libnr, "parse_url") ; http://www.php.net/manual/de/function.parse-url.php
MessageRequester("lib searcher", "die funktion ist in der lib"+Chr(10)+Chr(10)+DirectoryEntryName())
exit = 1
Else
MessageRequester("lib searcher", "die funktion ist NICHT in der lib"+Chr(10)+Chr(10)+DirectoryEntryName()+Chr(10)+"Libery Nr.: "+Str(libnr))
EndIf
CloseLibrary(libnr)
libnr = libnr + 1
EndIf
If DirectoryEntry = 0
exit = 1
EndIf
Until exit = 1
EndIf
MessageRequester("lib searcher", "The End")
aber bei dem code nicht
Code: Alles auswählen
exit.b = 0
libnr.l = 0
If ExamineDirectory(0, "E:\Suchmachine\ext", "*.dll")
Repeat
DirectoryEntry = NextDirectoryEntry()
If DirectoryEntry = 1
OpenLibrary(0, DirectoryEntryName())
libnr = libnr +1
If IsFunction(0, "parse_url") ; http://www.php.net/manual/de/function.parse-url.php
MessageRequester("lib searcher", "die funktion IST IN DER LIB"+Chr(10)+Chr(10)+DirectoryEntryName()+Chr(10)+"Libery Nr.: "+Str(libnr))
exit = 1
Else
MessageRequester("lib searcher", "die funktion ist NICHT in der lib"+Chr(10)+Chr(10)+DirectoryEntryName()+Chr(10)+"Libery Nr.: "+Str(libnr))
EndIf
CloseLibrary(0)
EndIf
If DirectoryEntry = 0
exit = 1
EndIf
Until exit = 1
EndIf
MessageRequester("lib searcher", "The End")
naja der ergebniss ist das ich 60DLLs durch sucht habe aber nirgent wo meine funktion drinne ist *scheisse*
Verfasst: 12.09.2005 03:21
von IcedCoffee
hää?
irgentwie geht das alles nicht so wie es soll
weil ich habe mir jetzt noch einen Functions Counter eingebaut aber der geht irgent wie nicht
also er geht schon aber nicht bei meinen php dll's [bei anderen dlls geht er aber]
weiss einer warum?
weil dll ist ja dll also müsste je doch bei php dll's genau so gehen wie bei anderen
Verfasst: 12.09.2005 03:25
von ts-soft
>> weil dll ist ja dll also müsste je doch bei php dll's genau so gehen wie bei anderen
o_O, das glaub ich aber weniger.
Hab mir den Code zwar nicht so genau angeschaut, aber warum nimmste nicht #PB_Any also dynamische Nummern?
Verfasst: 12.09.2005 13:01
von IcedCoffee
weil ich anfangs eigentlich nur wissen wollte welche lib ich in Openlibrary() in meinem anderen program öffnen muss/will
also wollte ich das ding nur mal kurz in 5min fertig haben und einmal ausfüren
also habe ich mir auch nicht so die gedanken darum gemacht weil es eigentlich nur ein 5min prog werden sollte [jetzt sind es schon 2 tage *scheisse*]