2011-09-14 3 views
1

특정 이벤트가 발생할 때 창을 잠그는 C++ 스크립트가 있습니다. 창 잠금은 "LockWorkStation()"명령을 사용하여 수행됩니다. 내가하고 싶은 일은 다른 이벤트가 발생할 때 "창을 열어 놓는 것"입니다. 논증을 위해서, 창문이 "잠겨"있다고 가정합시다. 2 분 후에 창문이 열려 있어야합니다. MSGINA.dll을 수정해야합니까? 또는 LockWorkStation()과 비슷한 간단한 명령입니까? 어딘가에 저장되어있는 사용자 이름과 암호가 있음을 알고 있습니다 (현재는 키로 작동하는 US B 스틱에 있음)."LockWorkStation()"을 사용하여 잠긴 후 "잠금 해제"하는 C++ 스크립트

작업을 수행하기위한 지침, 조언 또는 절차는 크게 감사하겠습니다.

감사

+7

C++ * 스크립트 * 란 무엇입니까? – bitmask

+2

내 마음 속에서 잠그는 것은 "물리적 인"사용자 행동을 통해서만 프로그램 적으로 종료 될 수있는 것이 아닙니다. 그 논리에서, 이것을 디자인 할 방법이 없어야합니다. 물론 코드 주입을 사용하여 웹을 수행하는 방법을 보여주는 웹의 해킹이 있습니다. 그러나 안정적인 기능을 얻을 수 있다고 생각하지 않습니다 (향후 버전의 Windows에서는 작동하지 않을 수도 있습니다). –

+0

왜 방송국을 처음부터 잠그고 있습니까? 정말로, 당신은 여기의 조수에 맞서 수영하고 있습니다. –

답변

2

워크 스테이션의 잠금을 해제하기 위해 지원되는 메커니즘이 없습니다. 커스텀 GINA 모듈을 작성하고 어떻게 든 그것을 교환해야 할 것입니다.

표준 GINA를 사용하면 가장 가까운 자동 로그온을 사용할 수 있습니다 (예 : Autologon tool from SysInternals 사용). 그러나 자동 로그온은 시스템 재부팅 후 또는 사용자 로그 오프 후에 만 ​​실행되므로 사용자 세션이 손실됩니다.

+0

FWIW, GINA는 Vista 이상에 존재하지 않습니다. –

+0

Seva 감사합니다. 제가 의도 한 바가 자격 정보 제공자가 될 수 있다고 생각합니까? 또는 동일한 문제가 지속됩니까? – Louis

+0

David이 옳습니다. 윈도우 비스타를 시작으로 사용자 정의 GINA가 존재하지 않았다. XP와 그 이하 버전에서도 커스텀 GINA는 아마도 당신이 원하는 솔루션이 아닐 것입니다. 커스텀 GINA 작성의 복잡성이 너무 높기 때문입니다. –

관련 문제