로그인 창에서 애플리케이션 실행

로그인 창에서 애플리케이션 실행

사용자 로그인이 발생하기 전에 Mac과 PC 모두에서 Reflector 또는 AirServer와 같은 응용 프로그램을 실행하는 방법을 찾고 있습니다. 누군가가 데이터를 보내기 시작할 때까지 응용 프로그램은 GUI가 거의 없으며 전체 화면으로 전환됩니다.

Mac 및/또는 PC의 로그인 화면에서 애플리케이션을 실행할 수 있는 방법이 있습니까?

답변1

OS X에서는 사전 로그인 실행 에이전트를 생성할 수 있습니다. 예를 들어 이 속성 목록을 다음과 같이 저장합니다 /Library/LaunchAgents/some.label.plist.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>some.label</string>
  <key>LimitLoadToSessionType</key>
  <array>
    <string>LoginWindow</string>
    <string>Aqua</string>
  </array>
  <key>ProgramArguments</key>
  <array>
    <string>say</string>
    <string>a</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

plist가 루트 소유인지 확인하십시오. 그렇지 않은 경우 launchd load사용자로 실행하면 로드할 수 있지만 launchd에 의해 자동으로 로드되지는 않습니다.

그런 다음 다시 시작하면 로그인 창이 표시될 때 say 명령이 한 번 실행되고 사용자가 그래픽으로 로그인한 후에 다시 실행되어야 합니다.

사용자가 그래픽으로 로그인할 때 프로그램이 다시 실행되지 않도록 하려면 을 제거하십시오 <string>Aqua</string>.

자동 로그인을 활성화하고 LimitLoadToSessionType그냥 으로 설정 하면 LoginWindow프로그램이 전혀 실행되지 않습니다.

참조데몬 및 에이전트 기술 노트또는 man launchd.plist더 많은 정보를 원하시면.

관련 정보