I'm trying to use this NSWorkspace method to launch an application and
print a document. I provide it with a FSRef-based
NSAppleEventDescriptor but the only thing the workspace does is
launching the app. Here is part of the code:
NSURL *documentURL = [[[NSURL alloc] initFileURLWithPath:[[openPanel
filenames] objectAtIndex:c]] autorelease];
NSURL *applicationURL = NULL;
OSStatus resultCode = LSGetApplicationForURL((CFURLRef)documentURL,
kLSRolesAll, NULL, (CFURLRef *)&applicationURL);
if (resultCode != noErr)
{
NSRunAlertPanel(NULL, [NSString stringWithFormat:@"%@ '%@'",
NSLocalizedString(@"CouldntFindAppForDocument", @""), [[[openPanel
filenames] objectAtIndex:c] lastPathComponent]], NULL, NULL, NULL);
return ;
}
NSBundle *appBundle = [NSBundle bundleWithPath:[applicationURL path]];
BOOL couldLaunchApp = NO;
NSAppleEventDescriptor *descriptor = [self descriptorWithPath:
[[openPanel filenames] objectAtIndex:c]];
if (descriptor != NULL)
couldLaunchApp = [[NSWorkspace sharedWorkspace]
launchAppWithBundleIdentifier:[appBundle bundleIdentifier]
options:NSWorkspaceLaunchAndPrint
additionalEventParamDescriptor:descriptor launchIdentifier:NULL];
if ( ! couldLaunchApp)
NSRunAlertPanel(NULL, [NSString stringWithFormat:@"%@ '%@'",
NSLocalizedString(@"CouldntAddDocumentToReader", @""), [[[openPanel
filenames] objectAtIndex:c] lastPathComponent]], NULL, NULL, NULL);
What am I doing wrong?
Thanks in advance.
-Laurent.
--
Laurent Daudelin
AIM/iChat/Skype:LaurentDaudelin
http://nemesys.dyndns.org
Logiciels Nemesys Software
laurent.daude...@verizon.net
Photo Gallery Store: http://laurentdaudelin.shutterbugstorefront.com/g/galleries
_______________________________________________
Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com
This email sent to arch...@mail-archive.com