// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "ui/base/win/lock_state.h" #include <windows.h> namespace ui { bool IsWorkstationLocked() { bool is_locked = true; HDESK input_desk = ::OpenInputDesktop(0, 0, GENERIC_READ); if (input_desk) { wchar_t name[256] = {0}; DWORD needed = 0; if (::GetUserObjectInformation( input_desk, UOI_NAME, name, sizeof(name), &needed)) { is_locked = lstrcmpi(name, L"default") != 0; } ::CloseDesktop(input_desk); } return is_locked; } } // namespace ui