두 버전의 Xcode, Xcode 3.2.3 및 Xcode4 개발자 미리보기가 설치되어 있습니다. AppleScript로 3.2.3 버전이 선택되었는지 어떻게 확인합니까? 대신 단순히 이름으로 엑스 코드를 참조하는AppleScript에서 Xcode의 특정 버전을 어떻게 시작합니까?
답변
, 즉 :
이tell application "Xcode"
...
end tell
당신은 또한 즉, 자사의 전체 POSIX 경로하여 응용 프로그램의 특정 버전을 참조 할 수 있습니다 :
tell application "/Developer/Applications/Xcode 3.2.3.app"
...
end tell
는 또한 참조 AppleScript 언어 가이드 섹션은 application class입니다.
더 복잡한 솔루션은 시스템에 설치된 응용 프로그램의 모든 버전에 대해 시작 서비스 데이터베이스를 검색하는 작업입니다. 그런 다음 원하는 버전으로 프로그래밍 방식으로 프로그램을 선택할 수 있습니다.
property pLSRegisterPath : "/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister"
property pAppBundleID : "com.apple.Xcode"
property pAppRequiredVersion : "3.2.3"
set theAppPaths to every paragraph of (do shell script pLSRegisterPath & " -dump | grep --before-context=2 \"" & pAppBundleID & "\" | grep --only-matching \"/.*\\.app\"")
set xcodeApp to missing value
repeat with theAppPath in theAppPaths
try
if (version of application theAppPath) = pAppRequiredVersion then
set xcodeApp to application theAppPath
exit repeat
end if
end try
end repeat
if xcodeApp = missing value then
error "Needed application version not installed."
end if
using terms from application "Xcode"
tell xcodeApp
activate
end tell
end using terms from
다음과 같은 ID로 응용 프로그램을 시작할 수 있습니다. 어쩌면 두 버전의 ID가 다를 수 있습니다. 당신이 사용하여 응용 프로그램의 ID를 얻을 수 있습니다
tell application id "com.apple.AddressBook"
-- do something
end tell
...
tell application "Finder" to return id of (choose file)
그들은 실제로 다른 번들 식별자를 가지고 있습니다. Xcode 3은 "com.apple.Xcode"이고 Xcode 4는 "com.apple.dt.Xcode"입니다. Xcode 4가 최종 버전이 될 때까지 계속 유지할 지 확신 할 수 없지만 적어도 시간이 지나면 사용할 수 있습니다. –
나는 그럴 수도 있다고 생각했다. v4의 데모를 보았는데 다른 모양으로 보였으므로 다른 환경 설정이있을 것이라는 확신이 들었습니다. 이는 다른 ID를 가져야한다는 것을 의미합니다. id와 pref 파일 이름은 같습니다. – regulus6633
- 1. AppleScript에서 클립 보드에 어떻게 액세스합니까?
- 2. iOS에서 백그라운드 작업을 어떻게 시작합니까?
- 3. PostgreSQL 클라이언트 - 어떻게 시작합니까?
- 4. 단위 테스트 - 어떻게 시작합니까?
- 5. 스크립트를 어떻게 다시 시작합니까?
- 6. Xcode의 특정 파일에 대한 특정 컴파일러 플래그
- 7. 어떻게 Catalyst의 자동을 사용하고 시작합니까?
- 8. 특정 버전을 어떻게 별도로 얻을 수 있습니까?
- 9. AppleScript에서 말림
- 10. 이 GPS 앱은 어떻게 시작합니까?
- 11. WPF에서 여러 창을 어떻게 시작합니까?
- 12. Resque.redis.namespace를 사용하려면 resque를 어떻게 시작합니까?
- 13. vcredist의 특정 버전을 사용합니까?
- 14. Xcode의 이전 사용자 정의 설치를 어떻게 제거합니까?
- 15. AppleScript에서 Sikuli 스크립트 실행
- 16. csc.exe의 특정 frawework 버전을 목표로합니다.
- 17. Xcode의 디버거에서 객체를 어떻게 봅니까?
- 18. WSAStartup 함수는 Winsock DLL의 사용을 어떻게 시작합니까?
- 19. Apple Events AppleScript에서 이벤트
- 20. AppleScript에서 값을 나열 하시겠습니까?
- 21. 편집 모드에서 UITextView (iPhone)를 어떻게 시작합니까?
- 22. iOS 설정 번들에서 URL을 어떻게 시작합니까?
- 23. ASP.NET 웹 응용 프로그램을 어떻게 시작합니까?
- 24. 우선 순위가 낮은 프로세스는 어떻게 시작합니까? C#
- 25. 안드로이드에서 응용 프로그램의 URL을 어떻게 시작합니까?
- 26. 사용자가 JTextBox를 떠날 때 어떻게 동작을 시작합니까?
- 27. 나는 어떻게 고모 쿠 (Gomoku)로 시작합니까?
- 28. 자동 빌드를 위해 msbuild & nant를 어떻게 시작합니까?
- 29. Mac에서 새로운 응용 프로그램을 어떻게 시작합니까?
- 30. 저장하거나 실행하려면 페이지로드시 .exe 파일을 어떻게 시작합니까?
아, 참으로 내가 전에 그렇게하는 데 사용됩니다. 하지만 이제는 경로를 지정하지 않고도 대안을 원합니다. 스크립트가 두 .app 번들 중 하나를 선택하는 방법에 대해 궁금합니다. – Plumenator
@Plumenator Xcode의 필수 버전을 명시 적으로 검색하는 대체 솔루션으로 내 대답을 업데이트했습니다. – sakra
와우,이 모양이 옳다! Lemme는 일하러 아침에 이것을 시도합니다. Btw, "용어 사용"블록이 필요합니까? 또한이 물건을 어떻게 아십니까? 시작 서비스 부분은 무엇입니까? – Plumenator