| |
|
|
Andreas Gaida | Hi! Ich habe hier eine für mich wichtige frage zur erstellen von DLLs und deren weitergabe. Ich habe mir mit Purebasic eine DLL erstellt. Die MD5 befehle von Purebasic in sich hat ,habe das aber alles so erweitert das sie von Profan aufgerufen werden können und als eigener Tread laufen ohne Profan anzuhalten und mit Message zu verständigen wenn Tread fertig ist. Ich würde gerne die DLL hier frei zu verfügung stellen aber habe bedenken wegen Outsourcing. Meine Frage ist habe ich genug eigenes erarbeitet oder könnte man mich wegen Outsourcing der Befehle MD5FileFingerprint() ,MD5Fingerprint() ,IsThread() belangen. Wenn jemand da zu näheres wüste wäre ich für Beratung sehr dankbar.
Der Quellcode der von mir erstellten MD5 DLL
ProcedureDLL MD5_FILE_Thread(Lnge.l)
Shared Text.s
adrre.l = PeekL((Lnge.l + 0 ))
lenge.l = PeekL((Lnge.l + 4 ))
ziel1.l = PeekL((Lnge.l + 8 ))
tid.l = PeekL((Lnge.l + 12))
hwd.l = PeekL((Lnge.l + 16))
msg.l = PeekL((Lnge.l + 20))
lpa.l = PeekL((Lnge.l + 24))
wpa.l = PeekL((Lnge.l + 28))
Text = PeekS(adrre.l, lenge.l)
Text = MD5FileFingerprint(Text)
PokeS(ziel1.l, Text)
If (hwd.l > 0) And (msg.l > 0)
result.l = SendMessage_ (hwd.l,msg.l,wpa.l,tid.l)
EndIf
ProcedureReturn @Text
EndProcedure
ProcedureDLL MD5_BUFFER_Thread(Lnge.l)
Shared Text.s
adrre.l = PeekL((Lnge.l + 0 ))
lenge.l = PeekL((Lnge.l + 4 ))
ziel1.l = PeekL((Lnge.l + 8 ))
tid.l = PeekL((Lnge.l + 12))
hwd.l = PeekL((Lnge.l + 16))
msg.l = PeekL((Lnge.l + 20))
lpa.l = PeekL((Lnge.l + 24))
wpa.l = PeekL((Lnge.l + 28))
;Text = PeekS(adrre.l, lenge.l)
Text.s = MD5Fingerprint(adrre.l, lenge.l)
PokeS(ziel1.l, Text)
If (hwd.l > 0) And (msg.l > 0)
result.l = SendMessage_ (hwd.l,msg.l,wpa.l,tid.l)
EndIf
ProcedureReturn @Text
EndProcedure
ProcedureDLL Start_Thread_MD5_File(Lnge.l)
Shared MD5A.s
Thread.l = CreateThread(@MD5_FILE_Thread(), Lnge.l)
PokeL((Lnge.l + 12), Thread.l)
ProcedureReturn Thread.l
EndProcedure
ProcedureDLL Start_Thread_MD5_Buffer(Lnge.l)
Shared MD5A.s
Thread.l = CreateThread(@MD5_BUFFER_Thread(), Lnge.l)
PokeL((Lnge.l + 12), Thread.l)
ProcedureReturn Thread.l
;ProcedureReturn Lnge.l
EndProcedure
ProcedureDLL INFO_DLL()
Shared MD5A.s
MD5A = MD5 DLL V0.01 von Andreas Gaida
ProcedureReturn @MD5A
EndProcedure
ProcedureDLL Status_MD5_Thread(Lnge.l)
Shared MD5A.s
Thread.l = IsThread(Lnge.l)
ProcedureReturn Thread.l
EndProcedure
MfG Andreas |
|
|
| Athlon X2 4800 , 2GB Ram , GeForce 7800GT Windows XP Pro , XProfan 10 und 11 , Profan2Cpp 1.6b | 31.03.2008 ▲ |
|
|
|
|
H.Brill | Also ich würde es NICHT machen, alleine wegen der Cipher und Thread - Libraries. Da gab es früher schon öfter Ärger deswegen. Nur ganz Hausgemachtes ist erlaubt. Kannst die DLL aber ohne schlechtes Gewissen für dich privat nutzen.
Lies aber auch noch die Nutzungsbedingungen in der PB-Hilfe, da steht es auch noch unter Rechtliches drin.
|
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 01.04.2008 ▲ |
|
|
|
|
Andreas Gaida | Hi! Thx für den Ratschlag ,werde ihm auch befolgen. Da man heut zu tage für jede kleinigkeit gleich um zig Tausende verklagt werden kann ist es wohl gesünder für mich. Auch wenn mein Gewissen auch andersrum rein wäre , wenn jeder soviel Geld für Software ausgeben würde wie ich hätte die Welt nicht nur einen Bill Gates. MfG Andreas |
|
|
| Athlon X2 4800 , 2GB Ram , GeForce 7800GT Windows XP Pro , XProfan 10 und 11 , Profan2Cpp 1.6b | 03.04.2008 ▲ |
|
|
|
|
H.Brill | Ja, belassen wir es hierbei. Noch als Anmerkung : Mir wäre es ja egal, aber bedenke, daß hier auch so mancher PBler (als Gast) mitliest. Da passiert es schnell, daß jemand einen Link im PB-Forum nach hier macht, und es dann zu unnötigen Diskussionen kommt. Ich selber habe vor Jahren in einem relativ unbekannten Basic-Forum erlebt, wie auf einmal da bekannte Leute aus anderen Programmier - Foren da waren. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 03.04.2008 ▲ |
|
|
|
|
| H.Brill
Nur ganz Hausgemachtes ist erlaubt.
Ich glaube ganz sooo ist es auch nicht.
Es ist hingegen sicherlich unerwünscht/nicht erlaubt wenn Du eine Bibliothek publizierst welche ein reiner Wrapper bereits vorgefertigter Funktionen ist.
Ab wann eine Bibliothek ein reiner Wrapper ist würde ich z.B. so formulieren:
Ein reiner Wrapper ermöglicht das Nutzen von Funktionen durch ein anderes Ziel (Ziel wäre hierbei z.B. XProfan) als ursprünglich angedacht und bietet ausser einer nötigen Schnittstelle zum Ziel im Verhältnis zu den gewrappten Funktionen keinen weiteren oder verhältnismäßig geringen Sinn.
Deinen o.g. Quelltext im Initialposting würde ich z.B. als solch einen reinen Wrapper bezeichnen.
PS: Wrapper hat (leider) wenig mit Wopper zu tun! |
|
|
| |
|
|
|
H.Brill | Ja, IF magst ja wohl Recht haben. Kommt immer darauf an, wie man es sieht. War ja nur ein guter Rat, da manche aus der PB - Gemeinde leider etwas zu genau sind und nur auf sowas warten. |
|
|
| Benutze XPROFAN X3 + FREEPROFAN Wir sind die XProfaner. Sie werden von uns assimiliert. Widerstand ist zwecklos! Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.
Was die Borg können, können wir schon lange. | 04.04.2008 ▲ |
|
|
|