2012-11-07 6 views
1

나는 foolhardy가되어 GMail PDF 서비스로 내 이메일 PDF를 작성하고 동시에 AppleScriptObjC를 배웠습니다. 인쇄 대화 상자에서 실제로 파일을 수락 할 수있는 것을 제외하고는 모든 것이 작동합니다. 컴파일 내가 (응용 프로그램은 Gmail의 이름이 오류를 얻을 PDF 서비스 폴더에 추가하면 클래스 "NSObject의"코코아 - 애플 스크립트 (AppleScriptObjc) 응용 프로그램으로 PDF 서비스를 만들려면 어떻게해야합니까?

property recipientField : missing value 
    property subjectField : missing value 
    property fromField : missing value 
    property passwordField : missing value 
    property messageField : missing value 
    property pdfFile : missing value 


    on ButtonHandlerCancel_(sender) 
     quit 
    end ButtonHandlerCancel_ 

    on ButtonHandlerSend_(sender) 
     set recipient to recipientField's stringValue() 
     set subject to subjectField's stringValue() 
     set fromUser to fromField's stringValue() 
     set pw to passwordField's stringValue() 
     set message to messageField's stringValue() 

     set sendEmailScript to (current application's NSBundle's mainBundle()'s pathForResource_ofType_("sendEmail", "")) as string 
     set emailserverInfo to " -s smtp.gmail.com:587 -xu '" & fromUser & "' -xp '" & pw & "' -m '" & message & "' " 
     do shell script quoted form of sendEmailScript & " -t " & recipient & " -u " & subject & " -f '" & fromUser & "' " & emailserverInfo 
     quit 
    end ButtonHandlerSend_ 

    on applicationWillFinishLaunching_(aNotification) 
     -- Insert code here to initialize your application before any files are opened 
     set fromField's stringValue to do shell script "defaults read org.ryancollins.GMail-PDF 'fromDefault'" 
     set passwordField's stringValue to do shell script "security 2>&1 >/dev/null find-generic-password -ga gmailpdf |ruby -e 'print $1 if STDIN.gets =~ /^password: \"(.*)\"$/'" 
    end applicationWillFinishLaunching_ 

    on applicationShouldTerminate_(sender) 
     -- Insert code here to do any housekeeping before your application quits 
     set fromDefault to fromField's stringValue() 
     do shell script "defaults write org.ryancollins.GMail-PDF 'fromDefault' '" & fromDefault & "'" 

     set passwordDefault to passwordField's stringValue() 
     do shell script "security add-generic-password -a gmailpdf -s email -p '" & passwordDefault & "' -U" 

     return current application's NSTerminateNow 
    end applicationShouldTerminate_ 


end script 

을 : 스크립트 gmailpdfAppDelegate 속성 부모 : 여기

코드가 지금까지의 모습입니다 PDF : 당신이 어떤 F가없는 것처럼 파일을 수락하도록 AppleScriptObjC 응용 프로그램을 어떻게합니까 The document “Google News.pdf” could not be opened. GMail PDF cannot open files in the “Portable Document Format (PDF)” format.

답변

0

이 보이는 ILE 처리는 구현해야합니다, 그래서 아직 응용 프로그램의 기능을 application:openFile:NSApplicationDelegate에서 :

NSApplicationDelegate documentation에서 :

- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename 

어느, AppleScriptObjC에서, 다음과 같습니다

on application_openFile_(theApplication, filename) 
    -- your PDF handling code goes here 
end application_openFile_