openpop email-uid

Gast #7109285
Lesenswert?

hallo,

ich versuche mich gerade an einem email-Verwaltungsprogramm in c#.
1
FileInfo filekk = new FileInfo(@"C:\ra_mail\inbox\" + pop3Client.GetMessageUid(i) + "");
2
          
3
message.Save( filekk );

führt zu:
1M1I6q-1nvmAM2Bze-0031TN.eml

ich hätte gerne so was:
00CA139D-0000238E.eml
- so wie livemail das speichert.

Wie kommt man auf diesen 64bit-Wert?


Danke für Unterstützung
Gast #7109327
Lesenswert?

Willst Du die eigentliche (vom Versender festgelegte) oder eine 
willkürliche (d.h. von Dir festgelegte) ID haben?

Letztere musst Du Dir selbst erzeugen, in der Win32-API gibt es 
Funktionen zum Erzeugen einer GUID -- die ist allerdings ein 
128-Bit-Wert, kein 64-Bit-Wert.
Gast #7109367
Lesenswert?

DerEgon schrieb:
> vom Versender festgelegt

Der Versender(oder livemail?) speichert emails mit 64bit-Kennung. Genau 
so will ich es haben. D.h. es soll  keinen Unterschied geben, ob per 
livemail oder openpop gespeichert.

Ich bräuchte den Algorithmus, der aus uid einen 64bit Wert macht.

Ich könnte mir was ausdenken. Z.B. alles weglassen was nicht Hexwert ist 
und gegebenenfalls mit Nullen auf 64bit auffüllen:
1M1I6q-1nvmAM2Bze-0031TN.eml
1161A2BE-00310000.eml

Lieber wären mir aber eindeutige Vorgaben.
Gast #7109782
Lesenswert?

grundschüler schrieb:

> Ich bräuchte den Algorithmus, der aus uid einen 64bit Wert macht.

Kleiner Tipp: Es handelt sich um ein im Mail-Bereich sehr gängiges 
Encoding, wenn auch mit einer kleinen, aber auch wieder recht üblichen 
Modifikation.
Und noch ein Tipp: die "-" sind in beiden Varianten der Message-ID nur 
zum Zweck besserer Menschenlesbarkeit eingefügt, also jeweils kein 
Bestandteil der eigentlichen ID.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren