2013-03-14 7 views
0

이곳은 새로운 곳입니다. Mac OS X에서 기본 메일 클라이언트 정보를 검색했습니다. 여기에서 도움을 얻었습니다 How do I get the default mail client using applescript? 그러나 나는 원하는 모든 정보를 얻지 못했습니다. 기본 메일 클라이언트 이름을 가지고 있지만 Mail.app (시작될 때)의 "Mail 정보"섹션에서 볼 수있는 버전을 얻을 수 없습니다.Mac OS X에서 기본 메일 클라이언트 버전을 얻는 방법은 무엇입니까?

+0

지금까지 시도한 것을 보여주십시오. –

+0

나는 지금까지 검색 한 적이 있지만 인터넷에서 참고 문헌을 얻었지만 GUI 기반 기술만으로 내 기본 메일 클라이언트 버전을 볼 수있었습니다. – Dhiraj

답변

5

LaunchServices은 사용자가 선호하는 응용 프로그램에 대한 정보가 포함 된 OS X API입니다.

LSGetApplicationForURL() function은 사용자가 찾는 데이터를 반환합니다. /Applications/Mail.app를 인쇄 내 시스템에

#include <CoreFoundation/CoreFoundation.h> 
#include <ApplicationServices/ApplicationServices.h> 

int main(int argc, char *argv[]) 
{ 
    CFURLRef mailURL = CFURLCreateWithString(kCFAllocatorDefault, CFSTR("mailto://"), NULL); 
    CFURLRef mailAppURL = NULL; 
    OSStatus ret = 0; 
    if((ret = LSGetApplicationForURL(mailURL, kLSRolesAll, NULL, &mailAppURL)) == 0) 
    { 
    CFStringRef path = CFURLCopyFileSystemPath(mailAppURL, kCFURLPOSIXPathStyle); 
    CFShow(path); 

    CFRelease(path); 
    CFRelease(mailAppURL); 
    } 
    else 
    { 
    fprintf(stderr, "LaunchServices error %d\n", ret); 
    } 

    CFRelease(mailURL); 
    return ret; 
} 

: 다음은 그 사용에 대한 간단한 예입니다. 반환 된 항목에 대한 자세한 정보가 필요하면 mailAppURLLSCopyItemInfoForURL() function을 사용할 수 있습니다.

+0

@ jatoben 그것은 나를 많이 도왔습니다. 감사합니다. – Dhiraj