Danke, hat geholfen, aber erst nach Neustart.
Beiträge von akoerber
-
-
Hallo,
bei mir zeigt TB im Modul "Aufgaben" trotz Einstellung "nächste sieben Tage" viele durchgestrichene Aufgaben aus 2004, 2005 etc,
Woran kann das liegen?
Dank im Voraus
-
IMAP (Uni); Sophos, intern
===
Hallo, ich habe eine Mail, die ich gestern lesen konnte, die heute aber nur noch eine Zeile anzeigt. "--_005_84bcf2239b184d89a7a3199fdfae0b55unihamburgde_--". Auch der Anhang fehlt Woran kann das liegen?
Unter Outlook mit Zugriff auf dasselbe Konto ist sie lesbar.
Gruß,
A.
-
Wiederaufnahme eines geschlossenen Threads von vor über 10 Jahren:
Hallo,
ich nutze Cardbook 103.5 (damals 85.2) und dort recht intensiv Kategorien. Nun gibt es Kontakte, die mehrere Adressen haben. Ich möchte aber in einzelnen Kategorien diese Kontakte nicht mit jeder ihrer Adressen haben, sondern nur mit ausgewählten. kann man das irgendwie einstellen?
Danke im Voraus
-
IMAP; Posteo und Uni; Sophos
Hallo, ich habe ein komisches Problem.
Vor ein paar tagen ist eine Nachricht beim Senden offenkundig irgendwo hängen geblieben. Nun ist wird in der Übersicht der offenen Fenster (ALT-TAB) ein kleiner Stub "Nachricht wird ...".:

Dieser lässt sich nicht löschen. Weder ein KLICKEN auf das rote Feld mit dem X rechts, noch ein Beenden von Thunderbird beendet das.
Auch im Task Manager kann ich das nicht beenden.- Selbst nach einem Neustart des Rechners ist das wieder da.
Hat jd eine Vorstellung, wo das herkommt?
Danke im Voraus
-
-
Danke für die Belehrung, das ist mir natürlich bekannt. Man kann aber Batch-Dateien kompilieren und mit einem Passwort schützen (auch den Quellcode). Dann liegt kein Klartext-Passwort auf der Platte.
-
Ja, das meinte ich. Schade eigentlich. Aber danke
-
(IMAP, posteo und Uni; Sophos; interne Firewall)
Hallo,
kann man beim Aufruf von TB mit -p neben dem profilnamen auch das zugehörige Passwort vergeben? Hintergrund ist, dass ich (mit "-no-remote") automatisch zwei Profile starten möchte - mit einer kompilierten Batch-Datei.
Dank im Voraus
-
IMAP; posteo und eigene synology; Sophos
Kurze Frage: Kann man die Aufbewahrungsregeln für ganze Ordnerbäume im "Batch" ändern? Viele Ordner sind so eingestellt, dass die "Regeln des Kontos" genutzt werden - aber nicht alle. Wenn ich die regeln des Kontos ändere, erwische ich vielleicht nicht alle.
Dank im Voraus
-
Bitte, woher nimmst Du diese Aussagen?
-
Ich frage nach dem rechtlichen Hintergrund Deiner Aussage, es erfordere vorherige schriftliche Zustimmung.
-
2. Was ist die Grundlage dieser Aussage? Gibt es dazu Rechtsprechung?
Datenschutz(!), wobei sich nun all deine weiteren Fragen in Luft auflösen.
Für Spammer wäre es ein Einfaches gültige Adressen auszuspähen und diese dann widerrechtlich zu verkaufen!Hmm. Von einer Notwendigkeit vorheriger schriftlicher Zustimmung sehe ich nirgends etwas. Das wäre ja analog auch so, als müsste der Empfänger eines Briefes vorher zustimmen, dass die Post einen Einwurf-Einschreibbestätigung zurücksenden darf.
Ich kenne das von Tracking-Pixeln (https://www.comcrypto.de/wissen/e-mail-zustellnachweis) - auch wenn das wieder eine Aussage über die Regel ist, nicht über ein rechtliches Erfordernis.Wenn Datenschutz das Argument ist, dürfte auch SMTP-Server-Logs (s. ebda) nicht ohne schriftliche Zustimmung zulässig sein.
Woher also die Aussage der Notwendigkeit vorheriger schriftlicher Zustimmung?
-
Danke. Dazu habe ich Fragen.
- TB ermöglicht durchaus DSN-Anfragen, und sie funktionieren auch. Natürlich kann der Empfänger sie abschalten.
- Was ist de Grundlage dieser Aussage? Gibt es dazu Rechtsprechung?
- Wie verhält sich dies zu folgendem: https://jurial.de/magazinbeitr%C…lle-als-loesung - konkret zu "SMTP-Protokollen" als Zugangsnachweis?
- Hat jemand Erfahrungen damit - u.a. wie Provider reagieren? Das dürfte ja nicht unerheblichen Aufwand bedeuten
- Wie und wo würde man SMTP-Protokolle konkret abfordern?
- ...mit der Message-ID? Den Inhalt wird man ja nicht noch einmal senden?
- Könnte man das "automatisieren" - also etwa ein Add-On bauen, das einen Schalter bereitstellt (etwa "Rückschein" oder so), mit dem zu einer Mail automatisch im Anschluss eine Abforderungsmail ergeht?
- Wäre das evtl. doch ein Ansatz, auch den Inhalt zertifiziert zu bekommen, etwa über Hash-Codes der Mail (sowohl der Header als auch des Inhalts und auch von ggf. verschlüsselten Anhängen?)
-
IMAP; Uni; Sophos
Hallo,
kann man eine MDN- und/oder DSN-Anforderung auch mittels eines Ausgangs-Filters setzen - etwa nur für bestimmte Adressen?
Dank im Voraus
-
Die Vorschläge, die hier gemacht werden, sind gerade nicht zielführend, nämlich:
1. entweder doch Dienst- und Privatmail in EINEM Profil zu haben, oder
2. in keinem Fall auf einem Rechner beides (d und p) zu bearbeiten.
Hier geht es aber gerade nicht darum, sondern darum, wie man es hinbekommt, WENN man aus welchem Grund auch immer (etwa: Arbeit für zwei Institutionen / Abteilungen etc. mit getrenntem System und getrenntem Backup auf einem Rechner) zwei Profile auf einem Rechner braucht.
-
1. Ja, ich habe exportiert, kompimiert und wieder eingelesen.
2. Ob der Dateiname "unerheblich" ist, ist wohl je nach Umstand unterschiedlich. Wenn ich (gerade auch mit dem Tool) exportieren will, kann es gut sein, dass ich den brauche. WENN ich Mails nicht als ganze Box, sondern einzeln exportiere, sollte zumindest der entstehende Dateiname etwas mit DIESER Mail zu tun haben. Hier ist es aber offenkundig so, dass der Dateiname aus einer ganz anderen Mail entsteht.
3. Beim Wieder-Einlesen ist die Mail wieder in Ordnung. Aber wenn ich die EML-Datei z.B. aufheben, weitergeben will etwa zum Einlesen in anderem Zusammenhang, sollte das schon alles stimmen.
-
Danke.
Warum auch hier eigentlich immer die grundsätzliche Infragestellung der Motivation?
Ja, ich will nicht, dass privates und dienstliches vermischt sind. Es gibt aber Situationen, wo ich auf meinem Dienstrechner angeschrieben werde in privaten Dingen. Dann möchte ich möglichst auch vom privaten Konto antworten (diese Aufgabe ist noch nicht gelöst. Das wäre dann in TB zu erledigen).
Ich habe aber selten zwei Rechner dabei. Zuweilen sitze ich am Dienstrechner, muss aber auch etwas privates erledigen und umgekehrt. Wenn dann TB im jeweils anderen Konto offen ist, gehe mailto:-Links jeweils dorthin.
Zudem gibt es auch Anlässe, mehrere private TB-Konten zu haben (etwa bei "wirklich privat" und selbstständiger Nebentätigkeit, oder bei Arbeit für einen Verein). Auch da kann diese Lösung helfen.
-
Ich weiß nicht, warum hier immer wieder Berichte zu Fehlern etc. mit übergreifenden Kommentaren dazu beantwortet werden, warum man das denn überhaupt gemacht hat. Darum geht es in dem Moment gar nicht.
Also:
1. Ich habe das AddOn genutzt, weil ich früher gute Erfahrungen damit gemacht habe. Reicht das? Natürlich "zwingt" mich keiner, es zu nutzen. Das bedeutet aber doch nicht, dass man es gar nicht nutzen dürfte. Und die Entscheidung, ob man es nutzt, fällt meist vor der Feststellung eines Fehlers.
2. Ich wollte hier nur berichten, dass WENN man es benutzt, es diesen Fehler gibt. Ist das unsinnig? Es kann auch andere Nutzer geben, die aus ähnlichen Gründen (ob nun "berechtigt" oder nicht) das Tool nutzen.
-
So, hier ein Versuch, den ich letztlich im Dialog mit ChatGPT erarbeitet habe.
Darin müssen PROFIL1 und PROFIL2 jeweils durch die eigenen profilnamen ersetzt werden.
Die bei Kompolierung mit MinGW-w64 (siege zeile 2) resultierende "mailto_wrapper.exe" ist dann a) in Firefox (bzw. in einem anderen Browser) als Programm für "mailto:" und in der Registry unter "Computer\HKEY_CLASSES_ROOT\mailto\shell\open\command" mit dem Parameter %1 einzutragen:
"[Pfad]\mailto_wrapper.exe %1"
Ich hoffe, das hilft.ZitatAlles anzeigen// mailto_wrapper_final_messagebox.c
// Kompiliere: x86_64-w64-mingw32-gcc mailto_wrapper_final_messagebox.c -municode -o mailto_wrapper.exe
#include <windows.h>
#include <wchar.h>
#include <stdio.h>
#include <stdlib.h>static int hexval(wchar_t c) {
if (c >= L'0' && c <= L'9') return c - L'0';
if (c >= L'a' && c <= L'f') return c - L'a' + 10;
if (c >= L'A' && c <= L'F') return c - L'A' + 10;
return -1;
}static void url_decode(const wchar_t *src, wchar_t *dst, size_t dstsz) {
size_t di = 0;
for (size_t i = 0; src[i] != L'\0' && di + 1 < dstsz; i++) {
if (src[i] == L'%') {
int h1 = hexval(src[i + 1]);
int h2 = hexval(src[i + 2]);
if (h1 >= 0 && h2 >= 0) {
dst[di++] = (wchar_t)((h1 << 4) | h2);
i += 2;
continue;
}
} else if (src[i] == L'+') {
dst[di++] = L' ';
continue;
}
dst[di++] = src[i];
}
dst[di] = L'\0';
}static void append_with_comma(wchar_t *dst, size_t dstsz, const wchar_t *src) {
if (!src
!*src) return;
if (dst[0] != L'\0') {
wcsncat(dst, L",", dstsz - wcslen(dst) - 1);
}
wcsncat(dst, src, dstsz - wcslen(dst) - 1);
}int wmain(int argc, wchar_t *argv[]) {
if (argc < 2) {
MessageBoxW(NULL, L"No mailto argument received.", L"Mailto Wrapper", MB_OK | MB_ICONEXCLAMATION);
return 1;
}int debugMode = 0;
wchar_t mailtoArg[8192] = L"";// Optional: -debug Parameter
for (int i = 1; i < argc; i++) {
if (_wcsicmp(argv[i], L"-debug") == 0) {
debugMode = 1;
} else {
wcsncpy(mailtoArg, argv[i], 8191);
mailtoArg[8191] = L'\0';
}
}wchar_t *p = mailtoArg;
// Optional: Debug-Konsole
if (debugMode) {
AllocConsole();
FILE *stream;
freopen_s(&stream, "CONOUT$", "w", stdout);
}const size_t MAXSZ = 8192;
if (wcsncmp(p, L"mailto:", 7) == 0) p += 7;wchar_t recipients[2048] = L"";
wchar_t params[4096] = L"";
wchar_t *q = wcschr(p, L'?');
if (q) {
*q = L'\0';
q++;
wcsncpy(recipients, p, _countof(recipients) - 1);
recipients[_countof(recipients) - 1] = L'\0';
wcsncpy(params, q, _countof(params) - 1);
params[_countof(params) - 1] = L'\0';
} else {
wcsncpy(recipients, p, _countof(recipients) - 1);
recipients[_countof(recipients) - 1] = L'\0';
}wchar_t tobuf[2048] = L"";
wchar_t ccbuf[2048] = L"";
wchar_t bccbuf[2048] = L"";
wchar_t subject[1024] = L"";
wchar_t body[4096] = L"";if (recipients[0]) append_with_comma(tobuf, _countof(tobuf), recipients);
wchar_t *cur = params;
while (cur && *cur) {
wchar_t *amp = wcschr(cur, L'&');
size_t toklen = amp ? (size_t)(amp - cur) : wcslen(cur);
wchar_t token[2048];
if (toklen >= _countof(token)) toklen = _countof(token) - 1;
wcsncpy(token, cur, toklen);
token[toklen] = L'\0';wchar_t *eq = wcschr(token, L'=');
if (eq) {
*eq = L'\0';
wchar_t *key = token;
wchar_t *val = eq + 1;wchar_t decoded[2048];
url_decode(val, decoded, _countof(decoded));if (_wcsicmp(key, L"cc") == 0) append_with_comma(ccbuf, _countof(ccbuf), decoded);
else if (_wcsicmp(key, L"bcc") == 0) append_with_comma(bccbuf, _countof(bccbuf), decoded);
else if (_wcsicmp(key, L"subject") == 0 && subject[0] == L'\0') wcsncpy(subject, decoded, _countof(subject)-1);
else if (_wcsicmp(key, L"body") == 0 && body[0] == L'\0') wcsncpy(body, decoded, _countof(body)-1);
}if (!amp) break;
cur = amp + 1;
}wchar_t compose[MAXSZ];
compose[0] = L'\0';
if (tobuf[0]) swprintf(compose, _countof(compose), L"to='%s'", tobuf);
if (ccbuf[0]) { wchar_t tmp[2048]; swprintf(tmp, _countof(tmp), L",cc='%s'", ccbuf); wcsncat(compose, tmp, _countof(compose) - wcslen(compose) - 1);}
if (bccbuf[0]) { wchar_t tmp[2048]; swprintf(tmp, _countof(tmp), L",bcc='%s'", bccbuf); wcsncat(compose, tmp, _countof(compose) - wcslen(compose) - 1);}
if (subject[0]) { wchar_t tmp[2048]; swprintf(tmp, _countof(tmp), L",subject='%s'", subject); wcsncat(compose, tmp, _countof(compose) - wcslen(compose) - 1);}
if (body[0]) { wchar_t tmp[4096]; swprintf(tmp, _countof(tmp), L",body='%s'", body); wcsncat(compose, tmp, _countof(compose) - wcslen(compose) - 1);}// Debug-Ausgabe
if (debugMode) {
wprintf(L"Finaler Compose-String:\n%s\n", compose);
wprintf(L"Drücken Sie eine Taste, um fortzufahren...\n");
getchar();
}wchar_t profile[64] = L"";
if (debugMode) {
// Profilwahl über Konsole
const wchar_t *profiles[] = { L"AKDienst25Bx", L"AKprivat25Bx" };
int nProfiles = _countof(profiles);
wprintf(L"Wählen Sie ein Thunderbird-Profil:\n");
for (int i=0; i<nProfiles; i++) wprintf(L"%d) %s\n", i+1, profiles[i]);int chosen = 0;
while (!chosen) {
wprintf(L"Drücken Sie die Zahl des Profils: ");
int c = getchar();
if (c >= '1' && c <= '0' + nProfiles) {
wcscpy(profile, profiles[c - '1']);
chosen = 1;
}
while (getchar() != '\n');
}
} else {
// Profilwahl per MessageBox (Ja/Nein)
int choice = MessageBoxW(NULL,
L"Welches Thunderbird-Profil soll verwendet werden?\n\nJa = PROFIL1\nNein = PROFIL2",
L"Thunderbird-Profil wählen",
MB_ICONQUESTION | MB_YESNO);
if (choice == IDYES) wcscpy(profile, L"PROFIL1");
else if (choice == IDNO) wcscpy(profile, L"PROFIL2");
else return 0;
}// Thunderbird starten
wchar_t thunderPath[] = L"C:\\Program Files\\Mozilla Thunderbird\\thunderbird.exe";
wchar_t cmdLine[MAXSZ];
swprintf(cmdLine, _countof(cmdLine),
L"\"%s\" --no-remote -p %s -compose \"%s\"",
thunderPath, profile, compose);STARTUPINFOW si = { .cb = sizeof(si) };
PROCESS_INFORMATION pi = { 0 };
if (!CreateProcessW(NULL, cmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) {
wchar_t err[512];
FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
NULL, GetLastError(), 0, err, 511, NULL);
MessageBoxW(NULL, err, L"CreateProcess failed", MB_OK | MB_ICONERROR);
return 2;
}CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
return 0;
}