Using scripts with different versions of AppleScript

Hi,
I have a script that works perfectly in my Apple Script Editor v2.4.3 and Language AppleScript 2.2.1   I've given that script to a friend of mine with AppleScript Editor 2.7 and Apple Script Language 2.4
The script does not work properly in their AppleScript Editor, does anyone know why this might be and/or how to remedy it?  Is there a way for them to download Language 2.2.1 to use or is there a way to figure out how I need to update my code to work for the 2.4 language.
Thanks

Hello
Whilst scripts using certain features of the latest version of AppleScript language won't even complile on previous versions, scripts written for previous versions should usually work in later versions with some exceptions.
cf.
https://developer.apple.com/library/mac/releasenotes/AppleScript/RN-AppleScript/
https://developer.apple.com/library/mac/releasenotes/AppleScript/RN-AppleScript/ RN-AppleScript.pdf
- Notable change introduced in 10.8 is new requirement on referencing file system object.
E.g.,
open "/path/to/file"
may work under 10.7 but not under 10.8 or later. Instead you need to use:
open "/path/to/file" as POSIX file
etc.
- Notable change introduced in 10.9 is new requirement on using Accessibility and GUI scripting.
cf.
OS X: Using AppleScript with Accessibility and Security features in Mavericks
http://support.apple.com/kb/HT5914
Good luck,
H

Similar Messages

  • How can I read pdf files from LabVIEW with different versions of Acrobat reader?

    How can I read pdf files from LabVIEW with different versions of Acrobat reader?
    I have made a LabVIEW program where I have possibility to read a PDF document.  When I made this LabVIEW program it was Acrobat Reader 5.0.5 that was installed on the PC. Lather when the Acrobat Reader was upgraded to version 6.0, there was an error when VI tries to launch the LabVIEW program. And Later again when we upgraded to Acrobat Reader 7.0.5 I must again do some changes and rebuild the EXE files again
    It isn't so very big job to do the changes in one single LabVIEW program, but we have built a lot of LabVIEW programs so this take time to due changes every time vi update Acrobat Reader. (We have build EXE files.)
    The job is to right click the ActiveX container and Click "Insert ActiveX Object", then I can brows the computer for the new version of acrobat Reader. After this I must rebuild all the "methods" in the Activex call to make the VI executable again.
    Is there a way to build LabVIEW program so I don't have to do this job every time we update Acrobat Reader?
    This LabVIEW program is written in LabVIEW 6.1, but I se the problem is the same in LabVIEW 8.2.
    Jan Inge Gustavsen
    Attachments:
    Show PDF-file - Adobe Reader 7-0-5 - LV61.vi ‏43 KB
    Read PDF file.jpg ‏201 KB
    Show PDF-file - Adobe Reader 5-0-5 - LV61.vi ‏42 KB

    hi there
    try the vi
    ..vi.lib\platform\browser.llb\Open Acrobat Document.vi
    it uses DDE or the command line to run an external application (e.g. Adobe Acrobat)
    Best regards
    chris
    CL(A)Dly bending G-Force with LabVIEW
    famous last words: "oh my god, it is full of stars!"

  • Java Cache Viewer shows duplicate URL with different versions

    In doing some testing lately we have come across a couple of situations where the same URL is showing in the JAVA cache viewer with different versions to them.  In the case of a 1.7 JRE this is not causing any adverse effects however when utilizing a 1.6 JRE we are getting messages about mixed mode for the JAR files.
    The jar file is signed as below:
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.8.2
    Application-Library-Allowable-Codebase: *
    Application-Name: named_applet
    Built-By: relbuild
    Permissions: all-permissions
    Created-By: 1.6.0_17-b04 (Sun Microsystems Inc.)
    Caller-Allowable-Codebase: *
    Codebase: *
    understanding the need to change the wildcard's to domains as we move forward.  I am wondering why the jar file is being listed and called twice and why it is being recognized as signed one time and not the next.
    The URL is identical in the cache viewer and the java console says it is not found in the cache when it is used the second time, even though previously in the session is finds it with the correct version.
    Any advice would be helpful

    that i even know, but the problem is that i do not have that version of java re installed, but i found distribution 07 of the same java version, i'll try it out with that.
    but when it still doesn't work, then i still would like to find the link where i can download java version 1.4.2_06.

  • Can two peeps use iChat with different accounts on the same computer?

    What do I do to REMOVE an old AIM account and replace it with a new account in IChat?
    Can two peeps use iChat with different accounts in the same computer?
    (Actually, two people share a laptop, but one of us cannot use her AIM account cuz mine is in iChat already... And, when traveling, I have the computer - and I would like to use iChat on the computer...)

    In iChat 4 you can have more than one AIM Valid name logged in at once.
    AIM valid = AIM, @mac.com or a MobileMe name.
    What you are then stuck with is that iChat is linked to one Buddy Picture and The one Mac User Account's Address Book which may or may not have Full Names, emails details, or a Nickname in iChat 4 linked to the Screen Names.
    Whilst it does let you both log in whilst using one Mac User Account there are drawbacks about who uses the keyboard and reading meesages from the other persons Buddies.
    8:50 PM Sunday; November 30, 2008

  • My iPhoto icon has a cross over it, when i open it, it You have "iPhoto" 9.2.1. you can't use this with this version of OSX? it used to work ?what's gone wrong?

    my iPhoto icon has a cross over it, when i open it, it You have “iPhoto” 9.2.1. you can't use this with this version of OSX? it used to work ?what's gone wrong?

    iPhoto 9.2.3 is incompatible with MacOS 10.9.3 Mavericks. If you are running Mavericks on your system you need to update iPhoto to 9.5.1. Only, the problem is, that this version is no longer available at the App Store.
    The easiest way to get a compatible iPhoto version in that case would be to upgrade to Yosemite, MacOS X 10.10, and then download the most recent iPhoto version from the AppStore, iiPhoto 9.6, like LarryHN suggested.
    If you cannot download iPhoto after upgrading to iPhoto 9.6 post back.

  • I want to connect to a network printer hp cp1518ni with different versions of windows (win7& winxp)

    I want to connect to a network printer hp cp1518ni with different versions of windows (win7 & winxp) . My pc with win 7 work ok but the pc with win xp not "see" the printer on the network. What is the additional driver should I install?
    thanks
    This question was solved.
    View Solution.

    Hi @OHIMATAS,
    I see by your post that you are unable to network the printer to the Windows XP computer, but the Windows 7 computer is connected. I can help you with this.
    Make sure the Windows XP computer is connected to the correct network name, not a Guest network either.
    Print a configuration page to get the printer's IP address.
    Printing a Configuration Page.
    Try and access the printer's Embedded Web Server on the Windows XP computer.
    Type the IP address into your web browser's address bar. (Internet Explorer)
    Did it load the webpage?
    If you can't access the printer's EWS, then check the IP address on the computer to see if the first 3 sets of numbers match the printer's IP. They have to match to be on the same network.
    Go to start, type run in the search box, type in cmd, then type ipconfig.
    Check the IPV4 address.
    Now check the IPV4 address for the printer.
    Do the first 3 sets of numbers match?
    Try and ping the printer.
    In the same window, type ping printers IP address (space between ping and IP address)
    What are the results?
    Run the add printer wizard through printers and faxes, if you were able to access the printer's EWS.
    Please provide in detail the results if you are still having issues.
    Have a nice day!
    Thank You.
    Please click “Accept as Solution ” if you feel my post solved your issue, it will help others find the solution.
    Click the “Kudos Thumbs Up" on the right to say “Thanks” for helping!
    Gemini02
    I work on behalf of HP

  • Can PI work with different versions of MQ?

    Hello
    I have requirment to let PI (7.1) communication with different versions of MQ (5.3 and 6.0). However I doubt that this is possible.
    As for MQ, the JMS drivers of the MQ needs to be deployed to PI. For MQ 5.3 and 6.0, different drivers (6.0 has additional jar files as 5.0) are to be packaged into com.sap.aii.adapter.lib.sda and deployed to PI. There is no way you can deploy different version of drivers onto the same PI box. even if you can deploy different version of hte driver to PI box, it won't work in runtime, simply because, when the driver is loaded, there is no way to tell PI class loader which version of class (driver) to load.
    how do you guys think of this?
    Thanks
    Jayson

    Hi
    I think that the 6.0 version should be backword compatible and should work with 5.3 also.
    Did you tried it?

  • Bible software with different version

    Hi all, thanks for all good work you are doing here.
    Please I want to ask: is it possible to have a parrallel bible application in my phone? I mean a bible with different versions as one application in my phone?

    Steve,
    Each web application has its own session within a J2EE container. You cannot share sessions, unless you deploy both apps as one web application which is probably not what you want. So, yes, the only work around I can think of is abandoning container-managed security so you can navigate to the other web app with some request params that cause an "auto-login" to happen.
    Steven Davelaar,
    JHeadstart Team.

  • Cannot use Chess with this version of Mac OSX...?

    When I first installed Leopard, Chess (the Apple app) worked fine. Now, after updating to 10.5.1 I get a message saying I can't use it with this version of OSX when I try to open it. Any idea why? Can I get Chess back? Is it just me?

    Andrew Butterfield wrote:
    Obviously some little glitch, but now it's working fine. Just wish I could beat it occasionally. Still, hope lies eternal...
    It is likely that in the Dock, you had a pointer to the pre-Leopard version of Chess left over from an upgrade or archive & install, so that version was trying to launch from the Dock. "Get Info" tells me that Leopard's Chess is version 2.3 & it even has a checkbox for "Open in 32 bit mode" -- something I haven't seen before.
    If you have any other similar Dock-related glitches, use the "Show in Finder" Dock menu option to find the app & see if it looks like a Tiger "leftover."

  • Cannot Use ichat with this version of OSX

    Please help!
    I installyed leopard and now when I try to use ichat I get the a message saying I can not use ichat with this version of OSX. What can I do to try to fix this?
    Thanks!

    Also Click and hold the icon in the DOCK and Use Show In Finder.
    When you get to the folder that the version of iChat the DOCK is linked click on the title of the Window to see the path to the Folder.
    An Archive and Install may include a Previous System part.
    You should see
    Applications
    Hard Drive (name)
    Computer (Name)
    NOT
    Applications
    Hard Drive
    Previous Systems
    Hard Drive
    Computer
    3:20 PM Saturday; December 29, 2007

  • Can NI-PSP be used to communicate between machines developed with different versions of LabVIEW?

    Hi all,
    A customer has a large PC application developed with LabVIEW 2010 SP1.
    They would like to add extend their system with a cRIO-9075. According to this document (ftp://ftp.ni.com/pub/devzone/tut/crio_software_versions.htm ), the minimum supported version of LabVIEW (with Scan Engine support) is LV 2011.
    To minimize risks, it is preferred that we don't upgrade LabVIEW for the main application, which is atively being used in production.
    I was thinking of developing the cRIO software in a newer version of LabVIEW (say, LV 2013 SP1), and using shared variables only to communicate between the PC and the cRIO.
    Is this a viable option? Does it matter if the PC and the cRIO have different versions of the LV runtime?

    It shouldn't matter, but then with shared variables you can never know for sure -- there are so many things that can make them break.
    You might be money ahead to write the comm using TCP/IP. You know that will work.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • Using an InCopy package with different versions of the same InDesign file

    Hi,
    I head up the studio for a London based design agency. We are looking into using InCopy with one of our clients (who will be off-site). In particular this will be working on Annual Reports.
    As an example the issue I am coming up against is the following:
    So far I imagine that we would have our InDesign file and create an InCopy package of all the stories to send to our client. With the content size of these type of documents it may be several days before we receive anything back. In the time between it is inevitable that we will need to carry out design changes. With our current workflow this would involve saving a new version of the InDesign file. When we receive the original InCopy package back from our client we may be working on a version 1..2..3,etc of the InDdesign layout. BUT the InCopy package wants to link to the original file we made the InCopy package from. Is there a way to link the InCopy package into our new InDesign file.
    Many Thanks

    You could try renaming the new file with the old name but I don't think
    that's that's going to be a recipe for success.
    Other than that, you're using a very dangerous workflow. Everything here
    is designed to revolve around a single InDesign file with however many
    assignments or packages there are.
    Bob

  • Using scripting with networking equipment under Windows

    It can be a challenge to use scripting to automate working with Cisco devices. The Cisco IOS does not seem to directly provide a command line interface. You are forced to find a way to automate interaction with a telnet or ssh session.
    The PERL language provides a number of object-oriented methods to help manage an interactive session, most notably Net::SSH::Expect and Net::Appliance::Session. These options can work well in a Unix environment, but not under MS Windows.
    There are PERL for Windows options, the best probably being Strawberry PERL. There is also a Unix under Windows option known as CYGWIN that is freely available. Unfortunately none of these will work well with the way Windows manages low-level terminal I/O. The curious can google "windows pseudo terminal" to see all the technical details.
    One way that does work under Windows is Tcl.  It was initially named Tool Command Language. It is sometimes shown as Tcl/Tk.
    Interestingly enough, Tcl is included within Cisco IOS as tclsh. There is no interaction with the tclsh and this example. It is just a bit of a curious coincidence.
    A Tcl port to Windows can be downloaded from http://www.activestate.com/activetcl/downloads. Select Download ActiveTCL for Windows. A direct link to the download that worked at the time of writing is Download ActiveTcl 8.5.14 for Windows (x86)
    Once base Tcl has been downloaded and installed there is one other component that will need to be installed from the Tcl Extension Archive, the expect package.
    The teacup program that is installed with the base Tcl package makes this easy. The teacup program will work with a proxy.
    You can set these Windows environment variables to specify proxy details:
    set http_proxy=
    set http_proxy_user=
    set http_proxy_pass=
    Then run teacup install expect
    The plink tool from the PuTTY download is also needed. It can be obtained from http://www.putty.org/.
    The sample that follows assumes that the data files, script and plink.exe executable all reside in the same directory.
    A sample Tcl script follows that reads a file of devices and a file of commands. It will run the list of commands against each device in the device file. It has some basic error checking, but should best be considered a ‘beta’ version. You could do more complex interactions in the Tcl script by adding exp_send and expect command statements. In short, if you can type it you could script it!
    Change directory to where your script, plink.exe  and data is stored and run with  tclsh <script_name>
    devices.list
    # Comment lines are allowed if they start with a hash mark
    # <IP_Addr> <userid> <password> <ssh|telnet> <timeout_in_secs>
    nnn.nnn.nnn.nnn    <userid>    <password>  ssh         <timeout_in_secs>
    nnn.nnn.nnn.nnn    <userid>    <password>  telnet      30
    commands.list
    # term length 0 needed or else IOS will wait for an enter to be pressed at the  --More-- prompts
    term length 0
    show run
    exit
    Script:
    # Run batch commands against one or more devices
    package require Expect
    exp_log_user 0
    set exp_internal 0
    set exp::nt_debug 0
    set prompt "(#\s*$|>\s*$)"
    set env(TERM) dumb
    set file_channel  [open "devices.list" r]
    set DEVICES      [read $file_channel]
    close $file_channel
    set file_channel  [open "commands.list" r]
    set COMMANDS      [read $file_channel]
    close $file_channel
    set command_entries [split $COMMANDS "\n"]
    set device_entries  [split $DEVICES "\n"]
    proc timedout {{msg {none}}} {
          send_user "Timed out (reason: $msg)\n"
          if {[info exists ::expect_out]} { parray ::expect_out }
          exit 1
    foreach device_entry $device_entries {
          if {[string length $device_entry] == 0 || [regexp {[ \t]*#} $device_entry]} { continue }
          set device  [lindex $device_entry 0]
          set user    [lindex $device_entry 1]
          set pass    [lindex $device_entry 2]
          set mode    [lindex $device_entry 3]
          set wait    [lindex $device_entry 4]
          set serial  [lindex $device_entry 5]
          # puts "Device=$device"
          # puts "User=$user"
          # puts "Mode=$mode"
          # puts "Wait=$wait"
          set timeout $wait
          # Spawning the Session
          # If you are logging on to the remote machine using "ssh", "slogin" or "rlogin", the information
          # gets processed in a slightly different manner. With any of these methods, it is necessary to
          # include an additional -l option to specify a username.
          # Next, the $spawn_id variable is captured, storing information about this spawn session in
          # memory for future reference.
          # If you are logging in via Telnet, the final code block in this section is required to pass the
          # username to Telnet. If the login is completed before the script times out, the exp_send command
          # passes the username.
          switch -exact $mode {
                "telnet" { set pid [spawn plink -telnet -l $user $device] }
                "ssh"   { set pid [spawn plink -ssh -l $user -pw $pass $device] }
                "serial" { set pid [spawn plink -serial $serial -l $user -pw $pass $device] }
          set id $spawn_id
          if {$mode == "telnet"} {
                expect -i $id timeout {
                timedout "in user login"
                } eof {
                timedout "spawn failed with eof on login"
                } -re "(login|Username):.*" {
                exp_send -i $id -- "$user\r"
          # Handling Errors
          # The error-handling section of the script is a while loop that anticipates a number of problems
          # that could occur during login. This section is not exhaustive. For example, you could also add
          # provisions for invalid usernames and passwords.
          # If the login is not completed during the allotted time frame, which is set from the devices.list file
          # and specified with expect -i $id timeout, the program displays an appropriate error message.
          # The remainder of this loop makes use of the exp_send command to allow for other scenarios, such
          # as the user typing "yes" when prompted to proceed with the connection, entering a password, or
          # resetting the terminal mode.
          set logged_in 0
          while {!$logged_in} {
                expect -i $id timeout {
                timedout "in while loop"
                break
                } eof {
                timedout "spawn failed with eof"
                break
                } "Store key in cache? (y/n)" {
                exp_send -i $id -- "y\r"
                } -re "\[Pp\]assword:.*" {
                exp_send -i $id -- "$pass\r"
                } "TERM = (*) " {
                exp_send -i $id -- "$env(TERM)\r"
                } -re $prompt {
                set logged_in 1
          foreach command $command_entries {
                if {[string length $command] == 0 || [regexp {[ \t]*#} $command]} { continue }
                # Sending the Request
                # If the login is successful, the code in the if statement below is used to send the "cmd" request
                # to display files and directories. After the request is sent with exp_send, the resulting output
                # is captured in the dir variable, which is set on the fourth line of the code shown below.
                if {$logged_in} {
                      exp_send -i $id -- "$command\r"
                      expect -i $id timeout {timedout "on prompt"} -re $prompt
                      puts "$expect_out(buffer)"
                # Closing the Spawned Session
                # The exp_close command ends the session spawned earlier. Just to be sure that session
                # does indeed close, the exp_wait command causes the script to continue running until a result is
                # obtained from the system processes. If the system hangs, it is likely because exp_close was not
                # able to close the spawned process, and you may need to kill it manually.
          catch { exp_close -i $id }
          exp_wait -i $id
          set logged_in 0
    *** End of Document ***

    Your friend will have to save the templates as CS6, which he can do.

  • Firefox Sync on same computer with different versions of Firefox

    Hi,
    I know how to use Sync on two different computers and a mobile device, but how can I Sync two or more different versions of Firefox (Nightly, Beta, Aurora, Release Candidate)? I can't get the code from the other computer/firefox because I can only have one version of Firefox open at the same time. I tried it. This is my setup. I have a different Profile for each version of Firefox I have. I also have each version of Firefox installed in a different directory, for example:
    Nightly - C:\Program Files\Mozilla Firefox\Nightly\
    Aurora - C:\Program Files\Mozilla Firefox\Aurora\
    Beta - C:\Program Files\Mozilla Firefox\Beta\
    Release Candidate - C:\Program Files\Mozilla Firefox\Release Candidate\
    and my Profiles are in my
    Nightly - C:\Users\David\AppData\Roaming\Mozilla\Firefox\Profiles\David-Nightly\
    Aurora - C:\Users\David\AppData\Roaming\Mozilla\Firefox\Profiles\David-Aurora\
    Beta - C:\Users\David\AppData\Roaming\Mozilla\Firefox\Profiles\David-Beta\
    Release Candidate - C:\Users\David\AppData\Roaming\Mozilla\Firefox\Profiles\David-Release Candidate\
    and I run Firefox with the following command (Properties/Target)
    "C:\Program Files\Mozilla Firefox\Nightly\firefox.exe" -P "David-Nightly"
    "C:\Program Files\Mozilla Firefox\Nightly\firefox.exe" -P "David-Aurora"
    "C:\Program Files\Mozilla Firefox\Nightly\firefox.exe" -P "David-Beta"
    "C:\Program Files\Mozilla Firefox\Nightly\firefox.exe" -P "David-Release Candidate"
    Can anyone help me so that I can Sync all the accounts (basically, just the bookmarks), so I will have access to all my bookmarks, instead of going to the firefox version I saved it in? I would appreciate any and all assistance concerning this matter.
    Thank You.

    Use the -no-remote command line switch to open another Firefox instance with its own profile and to run different Firefox instances simultaneously, but do not use -no-remote with the default browser and the default profile.
    * http://kb.mozillazine.org/Opening_a_new_instance_of_Firefox_with_another_profile
    Enter all details like the account name (email address) and password and the 26-character Sync key manually to connect to an existing sync account instead of using the 12-character code to pair a device if pairing isn't possible.
    # open "Tools > Options > Sync" or "Firefox > Set Up Sync"
    # click "Set Up Firefox Sync" to go to "Firefox Sync Setup"
    # click "I Have an Account" : Connect
    # click "I don't have the device with me" at the bottom to enter the account settings (email, password, sync key)
    # click the "Sync Options" button at the bottom to select what to sync (Sync Options only affect the first sync)

  • Running executables that have been compiled with different versions of a same vi

    I am writing a LabVIEW 7 program on Windwos (NT 4.0 up through XP) that will have to simultaneously call and run at least two executable modules. Both of these modules will be written using some of the same utility vis from my user libraries. How can I run the two modules if they have each been compiled using different versions of the utility libraries (i.e. the two executables will have vis with the same name but with slightly different code)?
    I know i could dynamically call each vi by reference node, but that can get a bit cumbersome with dozens of vis...

    Hi meludwig,
    Unfortunately, LabVIEW keeps track of the different VIs in memory using the VI's name. Therefore, if you want to load multiple executables that use the same VIs but with different code, you will want to rename those VIs. LabVIEW cannot distinguish between 2 VIs with the same name but with different code. Dynamically calling the VIs using VI Server, like you mentioned, will also potentially cause problems because the executables might try to load same VI name into LabVIEW memory at a time and this will still causes problems.
    My suggestion would therefore to be to rename the utility VIs to another name and save it as a custom subVI in that program. Then, make sure to include that custom subVI in the App Builder executable and you should b
    e golden.
    Kileen C.
    NI

Maybe you are looking for

  • Merged Clips Appear Off Line Yet Are Successfully Linked In CS 5.5

    Hi there. I just migrated a feature documentary from an edit suite in a local production company to my home. We're using Adobe Production Premium CS 5.5, I tried to migrate the project using the Project Manager function of premiere. But no matter wha

  • Connect Apple TV to ad hoc network

    I want to use AirParrot to mirror my Windows 7 to my Apple TV, but it doesn't connect a lot and is slow when I do it normally. So I decided to create an ad hoc network on my Windows 7 Machine in hopes that I could have my TV connect to it.  But it is

  • Problem with WS14000086 worrkflow

    Hello Experts, I am facing a problem with a workflow. I have activated a standard workflow WS14000086 for "no approval on Contract Release". But when releasing the contract the status remains as "awaiting approval". I have made all the standard setti

  • How do I get Bongos on Garageband

    How do I get Bongos on Garageband. I assume they are in Logic, but for now, that is WAY OVER my head. Any Programs to buy ?

  • Converting Units in LabView and specifying sampling rate with Universal Library functions

    Hi, I am having trouble converting units in LabView 7.0 and having it write to a file / output on a chart in Nm instead of in volts.  I can't seem to find any straightforward instructions, eventhough it seems like a simple task.  Another task that wo