Мне нужно использовать одно довольно плохо закодированное приложение, которое требует от меня использования региональных настроек en-US, или, более конкретно, формат даты должен быть в формате en-US при выполнении этого приложения. Я не хочу использовать формат даты en-US, когда я регулярно использую свой компьютер. Я хотел бы запустить это приложение, используя двойной щелчок, без изменения региональных настроек вручную при его использовании.

Я создал специального пользователя в качестве члена группы "Администраторы" (эта программа требует повышения прав) и установил его региональные настройки на en-US с идеей использовать runas для запуска этого приложения с использованием других учетных данных пользователя, надеясь, что если я запустил приложение таким образом, оно выберет заданную пользователем региональную настройку.

Я также попытался сделать это с помощью PsExec из SysInternals Suite.

Тем не менее, приложение все еще использует мои региональные настройки. Моя ОС - Windows 10 64-битная. У кого-нибудь есть идея?

РЕДАКТИРОВАТЬ: принятый ответ на связанный (возможно, дубликат) вопрос такой же, как я уже пробовал (и для ясности выделен жирным шрифтом).

EDIT2: приложение, которое я пытаюсь запустить, является 32-разрядным, но требует повышения прав.

1 ответ1

0

Я смог решить эту проблему, используя простой, быстрый и грязный способ. Поскольку все, что требуется для этого приложения - это изменение формата даты (точнее, краткого формата даты), я создал приложение, которое:

  1. сохраняет текущий формат даты из реестра (из HKCU\Control Panel\International)
  2. изменяет формат даты на тот, который требуется для запускаемого приложения
  3. запускает приложение
  4. ожидает загрузки приложения
  5. изменяет значение настройки формата даты обратно на предыдущее значение

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

Источник

Требуется .NET Framework 4.6. Содержит appSettings.json, который позволяет изменить приложение для запуска, параметры и формат даты, чтобы установить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .