Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

ethan-1878

macrumors member
Original poster
Jun 8, 2014
45
1
Hi all,

I'm using an AppleScript app to launch apps in a managed fashion rather than having lots of apps in my "Login Items". My problem is that within that app, I'm launching another AppleScript app (the second one mounts a server for work into Finder, lets call it the 'mounting app') but it doesn't mount if I launch the app through AppleScript.

I know that I can just tell the launching app to mount the server while it is opening all of my apps BUT my plan was to make separate 'Quick Launch' apps for work and home etc. so it's a bit of a pain having to recompile my other 'Quick Launch' apps just because of the issue with the 'mounting app'.

If anyone knows why this is happening, I'd appreciate any help you can offer me.

Thanks,

Ethan:)
 
The problem your having is most likely to be that AppleScript is a single threaded language.
This means that only One instance of AppleScript can be running at any One time.
So your calling App is running AppleScript code, and your mounting App is also trying to run AppleScript code.
So one or the other of the App's is not executing.

You can try running a delay in the calling App, and also checking that the mounting app has completed before continuing any code in the calling App.
This may not work, and the delay time could be guess work, or be a trial and error process.

What version of OSX and AppleScript are you using ?

I tend to use the AppleScriptObjC language myself these days, this allows me to use the NSObject performSelectorOnMainThread:SEL)aSelector withObject:id)arg waitUntilDone:BOOL)wait method, which can be set to halt the execution of code until the method returns.
But I've not tried this method with executing an external AppleScript application.
But could be worth a try.

Regards Mark
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.