Falls es den Rahmen nicht sprengt - sonst später als eigenständiges Thema:
Wie funktioniert die Berechnung der ASIN bei Amazon?
Beispiel:
B009GK1NDI
Gibt man diese Nummer bei Amazon ein, hat man das Produkt aus Millionen anderer Produkte eindeutig identifiziert.
ASIN bei Amazon sind eindeutige Gruppen von 10 Buchstaben und/oder Ziffern, anhand derer Artikel identifiziert werden.
Nur 10 Zeichen lang - sowas würde ich gerne für meine Scripte verwenden.
Dagegen ist ein md5 Hash enorm lang - Beispiel - 0x5B961A0BD72FA9A21E66DEAE4806B7E0
B009GK1NDI
statt
0x5B961A0BD72FA9A21E66DEAE4806B7E0
wäre top.
Wie kann ich sowas eindeutiges und kurzes mit AutoIt aus der Datei c:\test\test.au3 generieren?
(Also eine "eindeutige Gruppen von 10 Buchstaben und/oder Ziffern", die stellvertretend für die Datei c:\test\test.au3 steht?)
Ich kenne mich mit Kombinatorik / Permutationen nicht aus und kann aus dem ff nicht sagen, wie viele Varianten es bei 10 Buchstaben und/oder Ziffern gibt.
Weiß das jemand von Euch?
Ändert sich der Dateiinhalt (und somit auch der Hash), kann eine zuvor gestartete Version aber nicht mehr erkannt werden
Das verstehe ich – allerdings bin ich gar nicht auf den Gedanken gekommen, dass jemand ein Skript laufen lässt, es erst dann ändert und dann eine zweite Instanz davon startet und eventuell erwartet, dass der Hash identisch bleibt.
Wenn ich ein Skript geändert habe, dann beende ich zuvor die laufende Instanz des gleichen Scripts, bevor ich es das erste Mal starte.
Ab dem zweiten Start würde der Hash in der Titelzeile mit der ersten Instanz übereinstimmen, wie das Beispiel unten zeigt.
So erkenne ich, dass es das gleiche Script ist und das ist mein Ziel. Ein Hash ist mir im Vergleich zur obg. ASIN nur zu lang.
Danke für die Anregung und für Deine hilfreichen Zeilen.
Professor Bernd - hier etwas lauffähiges.
$titel = _Crypt_HashFile(@ScriptFullPath,$CALG_MD5)
MsgBox ( 0 , " aus der Nase ziehen - " & $titel , "So sieht die Titelzeile eines Fensters aus - hier am Beispiel eines lauffähigen Messagebox-Fensters." )
In meinem Post vor Deiner Aufforderung schrieb ich:
"Wird das unveränderte Skript erneut aufgerufen, wäre der neu berechnete Hash identisch mit der vorher gestarteten Instanz ..."
Startest Du das Script aus diesem Post 2x als au3 Datei (oder 2x als exe), erhälst Du 2x Messageboxen mit dem gleichen Hash im Titel des Fensters.