Hi,

On 2016-05-25 10:56, Dave wrote:
Hi,

How can I get the version number of an Application from an
NSRunningApplication object?

I tried the following, the BundleID looks ok but
“bundleWithIdentifier:” returns nil?

+(NSInteger) getAppVersionNumberWithRunningApp:(NSRunningApplication*)
theRunningApp
{
NSString*                       myAppBundleID;
NSBundle*                       myAppBundle;
NSNumber*                       myAppShortVersionNumber;
NSInteger                       myAppShortVersion;

myAppBundleID = [theRunningApp bundleIdentifier];
myAppBundle = [NSBundle bundleWithIdentifier:myAppBundleID];
myAppShortVersionNumber = [myAppBundle
objectForInfoDictionaryKey:@"CFBundleShortVersionString"];
myAppShortVersion = [myAppShortVersionNumber integerValue];

return myAppShortVersion;
}

I read the documentation of bundleWithIdentifier: as it returns only bundles that are already loaded. ("Return Value: The previously created NSBundle instance that has the bundle identifier identifier. Returns nil if the requested bundle is not found.")

I think that the following should work:

myAppBundle = [NSBundle bundleWithURL:[theRunningApp bundleURL]];

Bye,
   Daniel
_______________________________________________

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to