Как изменить формат времени экрана блокировки Windows 10?

Мой формат времени Windows 10 - 24-часовой формат, включая панель задач, но экран блокировки по-прежнему 12-часовой формат. Как мне изменить формат моего времени на экране блокировки?

4 ответа

Решение

Я нашел лучший ответ, чем взломать реестр... Спасибо zppinto за то, что поставил меня на правильный путь. Проблема оставалась, что формат времени был все еще американским, когда ни один пользователь не вошел в систему.

Сначала активируйте скрытую учетную запись администратора:

  1. Run the Command Prompt as administrator
  2. Введите net user to see all the user accounts
  3. Введите net user administrator /active:yes to activate the hidden administrator user account
  4. Введите net user administrator * to give the administrator user a password - always a good idea
  5. Press Ctrl+Alt+Del to Switch users (or logout and log into Administrator account.

    In the administrator account:

    • Open the control panel and click on Change date, time or number format

    • Изменить Format: on the Formats tab and click on Additional Settings... button (Note: you may want to do language thing here as well, in order to copy it over to the Welcome Screen, etc)

    • Click on Time tab and make sure the correct time format is being used (also the date format, etc)

    • Back on the Region dialogue box click on the Administrative tab and click on Copy settings... кнопка

    • Tick the Welcome screen and system accounts а также New user accounts check box to copy the settings to all the Welcome Screen

Note: my settings took a long time to copy over; thus be a little patient - as the doctor said to the dwarf

Тоже самое; Мне удалось получить экран блокировки, чтобы показать ЧЧ: ММ через мою личную учетную запись с правами администратора, скрытая учетная запись администратора не требуется. Вот как:

  1. Нажмите Win+R, введите intl.cpl и нажмите Enter (откроются настройки "Регион")

  2. В появившемся окне установите ваши форматы "Short Time" и "Long Time", затем нажмите "Apply".

  3. Выберите вкладку "Административный" вверху, затем нажмите кнопку "Копировать настройки...".

  4. В следующем окне установите флажок "Экран приветствия и системные учетные записи".

  5. Нажмите кнопку "ОК" и заблокируйте компьютер с помощью Win+L, чтобы проверить его.

Вы пытались:

  • Перейдите в "Настройки" -> "Язык и время" -> и в "Формат" -> "Изменить формат даты и времени"?
  • Или перейдите в "Панель управления" -> "Часы, язык и регион" -> "Изменить формат даты, время или число", а затем изменить формат? Вы также можете посмотреть "Дополнительные настройки" в этом окне, чтобы увидеть, все ли отформатировано, как ожидалось.

Если ничего из этого не работает, я думаю, что единственным решением будет редактирование реестра Windows. Есть несколько руководств для Windows 8. Я думаю, что она будет совместима и с Windows 10.

Метод PowerShell:

New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null 
$internationalPaths = @("HKU:\.DEFAULT\Control Panel\International","HKCU:\Control Panel\International")
$hourFormat = "h"
IF($TimeFormat -eq '24h')
{
    $hourFormat = "H"
}       
FOREACH ($path in $internationalPaths)
{
    IF((Get-ItemProperty $path).'sTimeFormat')
    {
        #Windows 10 default time format h:mm:ss tt
        Set-ItemProperty -Path $path -Name "sTimeFormat" -Value "$hourFormat`:mm:ss tt"
    }
    IF((Get-ItemProperty $path).'sShortTime')
    {
        #Windows 10 default time format h:mm tt
        Set-ItemProperty -Path $path -Name "sShortTime" -Value "$hourFormat`:mm tt"
    }
}

Подробнее Как изменить формат времени экрана блокировки Windows 10 с помощью PowerShell

Благодаря коду PowerShell, предоставленному Фрэнком. Вот что я закончил, немного короче и чище ИМО.

[string[]]$('Registry::HKEY_USERS\.DEFAULT\Control Panel\International','Registry::HKEY_CURRENT_USER\Control Panel\International').ForEach{
    # Country
    $null = Set-ItemProperty -Path $_ -Name 'iCountry' -Value '47' -Type 'String' -Force
    $null = Set-ItemProperty -Path $_ -Name 'sCountry' -Value 'Norway' -Type 'String' -Force
    # Date
    $null = Set-ItemProperty -Path $_ -Name 'sLongDate' -Value 'dddd dd. MMMM yyyy' -Type 'String' -Force
    $null = Set-ItemProperty -Path $_ -Name 'sShortDate' -Value 'dd.MM.yyyy' -Type 'String' -Force
    # Decimal
    $null = Set-ItemProperty -Path $_ -Name 'sDecimal' -Value '.' -Type 'String' -Force
    $null = Set-ItemProperty -Path $_ -Name 'sMonDecimalSep' -Value ',' -Type 'String' -Force
    # Time
    $null = Set-ItemProperty -Path $_ -Name 'sTimeFormat' -Value 'HH:mm:ss' -Type 'String' -Force
    $null = Set-ItemProperty -Path $_ -Name 'sShortTime' -Value 'HH:mm' -Type 'String' -Force
    $null = Set-ItemProperty -Path $_ -Name 'sYearMonth' -Value 'MMMM yyyy' -Type 'String' -Force
}

Более простое решение, которое сработало для меня, желая отобразить его в 24-часовом формате в Великобритании.

  1. Перейдите к панели управления
  2. Нажмите на регион
  3. Изменить формат с английского (Великобритания) на английский (США)
  4. Нажмите Применить
  5. Изменить формат обратно на английский (Великобритания)
  6. Нажмите Применить, затем нажмите ОК

По сути, в Windows есть что-то закулисное, которое меняет формат даты и времени на системном уровне, несмотря на то, что все еще отображает его в правильном британском формате на внешнем интерфейсе. Я убежден, что это для обновлений Windows, поскольку они подключаются к американским серверам, которые нуждаются в американском формате. Я работаю с программным обеспечением Time and Attendance, и это было проблемой для нас с Vista и до сих пор в Windows 10 (хотя и менее агрессивно). Я только что сделал это на своем новом ПК, и это сработало, хотя время покажет, вернется ли Обновление Windows обратно.

Другие вопросы по тегам