Starten Sie eine Anwendung mit einem bestimmten Datumsformat

588
Dejan Janjušević

Ich muss eine eher schlecht codierte Anwendung verwenden, für die ich die regionalen Einstellungen von en-US verwenden muss. Das Datumsformat muss bei der Ausführung dieser Anwendung im en-US-Format vorliegen. Ich möchte das en-US-Datumsformat nicht verwenden, wenn ich meinen PC regelmäßig verwende. Ich möchte diese Anwendung mit einem Doppelklick starten, ohne die Ländereinstellungen bei der Verwendung manuell zu ändern.

Ich habe einen speziellen Benutzer als Mitglied der Gruppe "Administratoren" erstellt (für dieses Programm ist eine Erhöhung erforderlich), und die regionalen Einstellungen auf en-US festgelegt. Die Idee sollte runaszum Starten dieser Anwendung mit den verschiedenen Benutzeranmeldeinformationen verwendet werden Wenn Sie die App auf diese Weise verwenden, wird die jeweilige Regionseinstellung des Benutzers übernommen.

Ich habe es auch mit PsExec von SysInternals Suite versucht.

Die Anwendung verwendet jedoch weiterhin meine regionalen Einstellungen. Mein Betriebssystem ist Windows 10 64-Bit. Hat jemand eine Idee?

BEARBEITEN: Die akzeptierte Antwort auf die verknüpfte (möglicherweise doppelte) Frage ist die gleiche wie die, die ich bereits ausprobiert habe (und zur besseren Übersicht mit Fettdruck markiert).

EDIT2: Die Anwendung, die ich starten möchte, ist 32-Bit, erfordert jedoch eine Erhöhung.

0
Mögliches Duplikat von [So starten Sie ein 64-Bit-Programm mit einem anderen Gebietsschema als das Systemgebietsschema?] (Https://superuser.com/questions/905522/how-to-launch-a-64-bit-program-with -a-different-locale-than-the-system-locale) user vor 6 Jahren 2
@user hast du gelesen was ich probiert habe? Dejan Janjušević vor 6 Jahren 0
Verliere die Einstellung. Haben Sie die vorgeschlagene Alternative zu Microsoft AppLocale ausprobiert? Bevor Sie auf meinen Kommentar antworten, beachten Sie bitte, dass Sie nicht erwähnt haben, ob es sich um eine 32-Bit- oder 64-Bit-Anwendung handelt. Wenn Sie unhöflich zu mir sind, werde ich den Kommentar melden und nicht einmal antworten. Ehrlich gesagt, würde ich die Feindseligkeit aus Ihrer Frage streichen, weil sie der Gemeinschaft extrem feindlich gegenübersteht und nicht erforderlich ist. Ihr Betriebssystem ist 64-Bit, aber das sagt mir nicht, ob die Anwendung 64-Bit ist oder nicht und es macht einen Unterschied. Ramhound vor 6 Jahren 0
Es sollte darauf hingewiesen werden, dass die Anwendung möglicherweise nicht für ein anderes Gebietsschema ausgelegt ist (wenn die Anwendung 32-Bit ist und der Locale-Emulator das Problem nicht löst) fixiert sein). Ramhound vor 6 Jahren 0
@ Ramhound Danke für Ihre Aufmerksamkeit. Ich habe die Frage mit zusätzlichen Informationen bearbeitet. Ich habe es auch mit dem Locale-Emulator versucht und es funktioniert nicht. Dieser Locale-Emulator überschreibt wahrscheinlich die Thread-UI-Kultur. Ich brauche jedoch etwas, um die Thread-Kultur selbst zu überschreiben. Leider habe ich keinen Zugriff auf den Quellcode der Anwendung und kann ihn daher nicht beheben. Dejan Janjušević vor 6 Jahren 0
„Dieser Locale-Emulator überschreibt wahrscheinlich die Thread-UI-Kultur, jedoch brauche ich etwas, um die Thread-Kultur selbst zu überschreiben.“ -Was? Ihre Analyse ist falsch Ramhound vor 6 Jahren 0
Ich sagte wahrscheinlich - vielleicht irre ich mich. Tatsache ist, dass es nicht geholfen hat. Aber dort habe ich das Problem gelöst und eine Antwort gepostet. Dejan Janjušević vor 6 Jahren 0

1 Antwort auf die Frage

0
Dejan Janjušević

Ich konnte dieses spezielle Problem auf einfache, schnelle und schmutzige Weise lösen. Da für diese Anwendung lediglich das Datumsformat (genauer das kurze Datumsformat) geändert werden muss, habe ich eine Anwendung erstellt, die:

  1. speichert das aktuelle Datumsformat aus der Registrierung (aus HKCU \ Control Panel \ International)
  2. ändert das Datumsformat in das von der Anwendung, die ich starte, erforderliche Format
  3. startet die Anwendung
  4. wartet, bis die Anwendung geladen ist
  5. Ändert den Datumsformat-Einstellwert auf den vorherigen Wert zurück

https://drive.google.com/open?id=1RF_vu_-5Qk_ytE93iRzfK0zJGi5706ey

Quelle

Benötigt .NET Framework 4.6. Enthält appSettings.json, mit der Sie die zu startende Anwendung ändern, Parameter und das Datumsformat festlegen können.