Stellen Sie sich ein Mac OS X.app-Paket vor, das zwei Programme enthält: Eines mit einem Cocoa main(), das NSApplicationMain() zurückgibt, und ein separates Paket mit einer Carbon-Programmdatei mit einem eigenen main().Kann eine Cocoa-App das Main() eines SEPARATE Carbon Bundles im selben App-Paket starten?
Die Cocoa App ist für die Registrierung/Aktivierung. Wir wollen sie nicht in zwei Apps aufteilen. Ich möchte die Ausführung auf dem Carbon main() von INSIDE the Cocoa main() starten. Angenommen, der gesamte Code ist korrekt signiert, sind mehrere Pakete mit "main()" im selben App-Paket erlaubt, und wie startet man ein carbon main() aus dem Cocoa-Code heraus?
Konnte nicht einfach das zweite Bündel mit 'openURL:' o starten r 'launchAppWithBundleIdentifier' oder ähnlich? Warum müssen Sie es von * innerhalb * der App ausführen? – jtbandes
@jtbandes - vertrauen Sie mir, die Details sind lang und beteiligt, aber der Cocoa-Code muss vor dem Carbon-Code laufen. Nur wenn der Cocoa-Code festgelegt hat, was die Carbon App benötigt, kann die Carbon App ordnungsgemäß ausgeführt werden. Der Cocoa-Code muss den Start des Carbon-Codes aufrufen. Wird AppAppWithBundleIdentifier() nicht gestartet? Suchen Sie nach dem App-Paket mit dem Bundle Identifier unter myApp.app/Contents/info.plist? – SMGreenfield
Nun, es klingt wie Ihre Carbon-App ein separates Bundle, so könnte es (sollte?) Eine andere Bundle-ID haben. – jtbandes