2013-05-06 1 views

답변

6

대부분의 최신 랩톱은 단추와 모니터를 물리적으로 연결합니다. 예를 들어, Dell의 정밀도는 BIOS를 시작하기 전에도 PC를 부팅하고 디스플레이를 조 절할 수 있습니다. 하드웨어 연결을 통해 유선 상태로 표시됩니다.

슬프게도, 실제 버튼을 누르는 것만 큼 에너지 효율적이 아닌, 작업을 실행하기 위해 OS 내에서 시스템 콜을 에뮬레이트 할 수 있습니다. 이렇게

적절한 시스템 API를 연결하고 이렇게하는 매우 구체적인 명령을 실행 pywin32를 사용 (Windows에서) 당신을 필요로하고, 당신이 시스템 API의와 익숙하지 않은 및 경우는 까다 롭습니다 창문 (32)를 호출 기능. 의 라인을 따라

뭔가 :

방금 ​​다음 os.system() 하나를 실행하려고 할 수 리눅스에 있다면
import os, win32com.client 

def runScreensaver(): 
    strComputer = "." 
    objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator") 
    objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2") 
    colItems = objSWbemServices.ExecQuery("Select * from Win32_Desktop") 
    for objItem in colItems: 
     if objItem.ScreenSaverExecutable: 
      os.system(objItem.ScreenSaverExecutable + " /start") 
      break 

:

+0

전에 파이썬 32 비트와 함께 윈도우를 사용하고 pywin32를 다운로드하여 설치했습니다. 이제 코드를 실행하면 다음과 같은 오류 메시지가 나타납니다. Traceback (가장 최근의 마지막 호출) : 파일 "C : /Python33/screensaver.py", 줄 1, 그 밖의 다른 작업은 무엇입니까? 수입 OS, win32com.client 파일 "C : \ Python33 \ lib 디렉토리의 \ 사이트 - 패키지 \ win32com \ init__.py __", 5 호선, 수입 win32api, SYS, 운영 체제 ImportError를에서 'win32api'라는 이름의 모듈 무엇 그렇지 않으면 내가 잘못 했니? – user2304540

+0

그리고 당신은 그것을 설치했습니다 : http://sourceforge.net/projects/pywin32/files/ – Torxed

+0

그래요 ... 그래도이 방법으로는 작동하지 않지만 걱정하지 마십시오. 제 목적을 위해 그것을 깨달았습니다. 잠자기 모드에서 자동 빌드가 충분하다 :) – user2304540

관련 문제