Seite 2 von 3
Verfasst: 27.01.2008 17:26
von Thorsten1867
Ich glaube du machst dir da etwas zu viel Arbeit.
Code: Alles auswählen
MAC.s = InputRequester("Eingabe MAC Adresse", "Bitte geben sie die 12-stellige MAC Adresse ein", "")
MAC = RemoveString(MAC , "-") ; Minus entfernen
code.s = DESFingerprint(MAC, "schwingung")
MessageRequester("Passwort", "Dein Passwort lautet: "+code, #MB_OK|#MB_ICONINFORMATION)
Verfasst: 27.01.2008 17:36
von guldokat
hey super...das ist ja echt genial klein und gut...danke...
nur ich will es ein wenig narrensicher machen...das heist...
es muss reproduzierbar sein weil man ja verschiedene fehler machen kann...
zb. nur grosszeichen bei ABCDEF keine annahme von kleinschreibung
max 12 stellen auch wenn sie keinen einfluss auf den code haben aber besser für den anwender wenn er wirklich nur die 12 stellen der mac eingeben kann.
ok...mit oder ohne minus ist egal weil er eh im code rausgenommen wird...
aber erstmal danke für die schnelle und dolle hilfe!
gruss
Holger
Verfasst: 27.01.2008 18:08
von Thorsten1867
Wie wäre es damit?
Code: Alles auswählen
Procedure.s InputMAC()
MAC.s = InputRequester("Eingabe MAC Adresse", "Bitte geben sie die 12-stellige MAC Adresse ein", "")
MAC = RemoveString(MAC , "-") ; Minus entfernen
MAC = RemoveString(MAC , ":") ; Doppelpunkt entfernen
ProcedureReturn UCase(MAC) ; Rückgabe in Großschreibung
EndProcedure
MAC.s = InputMAC()
If Len(MAC) = 12
code.s = DESFingerprint(MAC, "schwingung")
MessageRequester("Passwort", "Dein Passwort lautet: "+code, #MB_OK|#MB_ICONINFORMATION)
Else
MessageRequester("Passwort", "Es wurde eine ungültige MAC-Adresse eingegeben! ", #MB_OK|#MB_ICONERROR)
EndIf
Verfasst: 27.01.2008 18:19
von Thorsten1867
Code: Alles auswählen
; Für Fortgeschrittene ;-)
MAC.s = InputRequester("Eingabe MAC Adresse", "Bitte geben sie die 12-stellige MAC Adresse ein", "")
MAC = UCase(RemoveString(RemoveString(MAC, "-"), ":"))
If Len(MAC) = 12
pw$ = DESFingerprint(MAC, "schwingung")
MessageRequester("Passwort", "Dein Passwort lautet: "+pw$+Chr(10)+"(Es ist nun auch in die Zwischenabage verfügbar) ", #MB_OK|#MB_ICONINFORMATION)
SetClipboardText(pw$) ; Passwort ins Clipboard
Else
MessageRequester("Passwort", "Es wurde eine ungültige MAC-Adresse eingegeben! ", #MB_OK|#MB_ICONERROR)
EndIf
Verfasst: 27.01.2008 23:28
von guldokat
Hallo,
super...das Programm läuft wie ichs mir gewünscht habe...nur noch eins...
kann ich irgendwie ein install draus machen und durch eine kopie einer nötigen datei irgendwohin ins windows verzeichnis damit eine kopie der exe zu verhindern...ohne das jemand weiss das diese eine datei benötigt wird!? ist ja nur nen dummy aber ebend ohne diesen keine ausführung möglich...
will einen einfachen klau der exe verhindern..
gruss
Holger
Verfasst: 27.01.2008 23:53
von Kurzer
guldokat hat geschrieben:Hallo,
super...das Programm läuft wie ichs mir gewünscht habe...nur noch eins...
kann ich irgendwie ein install draus machen und durch eine kopie einer nötigen datei irgendwohin ins windows verzeichnis damit eine kopie der exe zu verhindern...ohne das jemand weiss das diese eine datei benötigt wird!? ist ja nur nen dummy aber ebend ohne diesen keine ausführung möglich...
will einen einfachen klau der exe verhindern..
gruss
Holger
Zitat vom Ursprungspost: "...ich bin leider blutiger Anfänger..."
Holger, Du fängst an nach den Sternen zu greifen. Fang ganz klein an und arbeite Dich dann langsam in schwierigeres Terrain hoch.
Du kannst natürlich einen fertigen Installer benutzen und ggf, durch den auch eine "Dummydatei" in das Windowsverzeichnis kopieren lasen, aber unter die Rubrik "Kopierschutz" fällt das wahrlich nicht. Sowas hält niemanden ab. Das ist so, als würdest Du einem Strafgefangenen die Schnürsenkel verknoten, um ihn an einer Flucht zu hindern.
Was hats Du denn vor? Soll das Programm nur auf einem bestimmten Rechner laufen?
Verfasst: 28.01.2008 00:03
von guldokat
das problem ist folgendes...
das programm bekommen einige leute bei uns in der firma auf ihren laptops um die besagten passwörter zu generieren...
die leute haben alle nur einen normalen pc und programmierkenntnisstand....da ist kein crack dabei...
ist halt so das ich gerne verhindern möchte das die leute das untereinander kopieren geschweige denn womöglich jemand fremden in die hände geben...
deshalb will ich das zumindest mit einem kleinen trick verhindern...denn die leute haben soweit keine ahnung wenn ihnen das programm sagt da fehlt ne datei wie und wo sie suchen müssen...
ist nun ja nicht soooo wichtig aber ein wenig schwerer will ichs den jungs schon machen...ich kenne die meisten...die würden einfach die exe nehmen und kopieren...den installer bekommen die sowiesonicht in die hände...
gruss
Holger
Verfasst: 28.01.2008 00:13
von Kurzer
Hmmm, so auf die schnelle würde ich versuchen die Windows Seriennummern dieser Rechner auszulesen und diese als Kopierschutz im Programm abfragen. Evtl. reicht es ja auch einfach nur den "Computernamen" auszulesen und als Verfikationskriterium zu benutzen.
Mit Programmcode kann ich allerdings jetzt nicht dienen.
Verfasst: 28.01.2008 00:27
von guldokat
hmmm...jeder der rechner hat einen festgelegte pc-id die nicht geändert wird solange es den rechner gibt...dies wäre ein ansatzpunkt das müsste irgendwie gehen das man diesen bei der installation angeben muss und er verheiratet die soft mit dem rechner...
Holger
Verfasst: 28.01.2008 10:25
von guldokat
Hallo...
ich habe noch ein Problem....
der Ursprungscode war ein DESFingerprint...dieser berücksichtigt jedoch nur die ersten 8 MAC stellen...
Nun haben wir geräte mit Fortlaufenden MAC Adressen...also wo sich nur die letzten 4 stellen teilweise verändern...also gibt er mir dann immer den selben code zurück...
nun habe ich es angepasst auf
pw$ = MD5Fingerprint(*MAC, MemoryStringLength(*MAC))
jedoch bekomme ich dort einen 32 stelligen code zurück....
dieser ist ein wenig zu lang...
wie kann ich diesen denn runterbrechen auf nur 8 stellen?
wäre dankbar!
gruss
Holger