[JS] (CS3) eventListener & doScript

Hello everyone,
Is it possible to create an eventListener, like "afterOpen" that would trigger a script file?
In CS2, I wrote a few scripts that were managed by inEventScript Plug-in. We are upgrading to CS3 and this plug-in was not transported to CS3 since "eventListener" is available.
So if possible, what is the syntax to execute the doScript within the Event Handler Function? It would not be app.doScript. So what?
Thank you, Alex.

I am running into another issue now.
It does execute the script "afterOpen", but it is displaying my alert "No document open!!!" from my test: app.documents.lenght == 0.
So is there no Open Document altough it is an "after"???
The goal is to be able to execute some my regular script AND have have them attached to some events ("Open, Close, Copy & Paste). Or am I stuck to modify & include them in the STARTUP script. I know I can use event.parent to access the Document opened.
Also, are there events attached to pasting & copying (Before &/or after)?
Here is the Startup script.
#targetengine "session"
main();
function main()
var myScriptName = app.activeScript.fsName;
var myScriptPath = app.activeScript.path;
// var myPath = app.filePath + "/Scripts/Scripts Panel/~InEventScript/";
//** Number 0
var myFile = new File (myScriptPath+"/PrePressOPEN.jsx");
if (myFile.exists)
app.addEventListener( "afterOpen", myFile, false );
else
alert ("File:\n" + myFile.fsName + "\n...has NOT been Installed!!!");

Similar Messages

  • Email using VB

    I just want to be able to email jpegs I just exported from indesign I have a script that will do the emailing but it does not work from in Indesign. I can call the other script but it is still using indesign and there for does not work. I want it to work using one button to export and email rather than have to open out attach and send. Can someone help
    Can I run or call another windows .vbs outside of iD
    or can indesign do it.
    Thank in advance

    Aloha Daniel
    NEVER MIND....
    The VBScripting doesn't work the same way as JavaScript does. I get errors when I tested this.
    Use DoScript. I do this all the time with JS.
    Set myInDesign = CreateObject("InDesign.Application.CS3")
    myInDesign.DoScript ScriptName, idScriptLanguage.idVisualBasic
    David

  • InDesign CS3 DoScript Problem

    Hi All,
    Windows / CS3 / JavaScript
    I have a problem with doScript, my logic is "All the scripts stored to the server", from that we have to invoke the script using doScript from the client system, it is working very fine, Suppose if i create two options ADD and REMOVE in the server script. When i double click from the client script it will not show the options, it will directly invoking the ok button. So i didn't get options.
    Is there any way to show those options.
    Regards,
    Sudar

    You have switched off interaction. Search the forum for "userInteraction".
    Dave

  • [JS CS3] Problem with EventListener

    Hello,
    I am having a problem passing information from two functions to a third when those functions are invoked by an eventListener. Below is the code, very simplified.
    The first function will get the last word of each text frame at the moment the file is opened.
    In the second function, the last word of each text frame will be recorded at the moment of Save.
    The third function will compare the two arrays and get the page number where the last word has moved. This script is to tell the user if there is any text flow from one page to another while making minor changes.
    The problem is that the first two functions only return the function itself and not the values of the function.
    If I assign the first two functions to variables, the third function works correctly but the eventListener does not recognize the functions. I have to comment out the eventListeners and call the first two functions outside of them.
    Any advice to help me solve this would be helpful.
    Thanks,
    Tom
    #targetengine "session"
    main();
    function main(){
    var myEventListener1 = app.addEventListener("afterOpen",arrLastWordsOnOpen, false);
    var myEventListener2 = app.addEventListener("afterSave",arrLastWordsOnSave, false);
    var myEventListener3 = app.addEventListener("afterSave",compare, false);
    function arrLastWordsOnOpen(){
    var a = 5;
    alert(a);
    return a;
    function arrLastWordsOnSave(){
    var b = 6;
    alert(b);
    return b;
    function compare(){
        var c = arrLastWordsOnOpen+arrLastWordsOnSave;
        alert(c);

    Hi Tom,
    Your three functions are registered as event handlers, so they are intended to be automatically called when the corresponding events occur, so this is —generally— a wrong approach to call such functions by yourself from other points of your code. What you need is to store the results computed by arrLastWordsOnOpen and arrLastWordsOnSave, so that the third handler can use the values. Since you are using a persistent engine, you could simply declare a and b at the main() level. Then arrLastWordsOnOpen would update a, arrLastWordsOnSave would update b,and compare just needs to set c = a + b;
    If you don't want to 'pollute' the outer scope of the handler functions, you can also store the computed values as new properties of the functions themselves:
    #targetengine "session"
    main();
    function main()
         var myEventListener1 = app.addEventListener("afterOpen",arrLastWordsOnOpen, false);
         var myEventListener2 = app.addEventListener("afterSave",arrLastWordsOnSave, false);
         var myEventListener3 = app.addEventListener("afterSave",compare, false);
         function arrLastWordsOnOpen()
              var a = 5;
              alert(a);
              arrLastWordsOnOpen.computedValue = a;
         function arrLastWordsOnSave()
              var b = 6;
              alert(b);
              arrLastWordsOnSave.computedValue = b;
         function compare()
              var c = arrLastWordsOnOpen.computedValue + arrLastWordsOnSave.computedValue;
              alert(c);
    Hope that helps.
    @+
    Marc

  • (JS)(CS3) eventListeners: afterOpen UNSTABLE

    Hello everyone,
    I was able to emulate what inEventScript CS2 plug-in did, using the EventListener new function build into CS3. UNFORTUNATELY as soon as I close the document(s), InDesign crashes. The script is reliable as it has been used in CS2 for the past 6 months. All I did was to write the script that creates the event. The event gets triggered, the script executes and the handler closes once the script is finished. I can open several Docs. and they all get scripted correctly. It looks like something terminates INCORRECTLY once I close one of the document!
    Any suggestion or input will be greatly appreciated. Alex.
    Here is the EVENT Script.
    ===============================================================
    #target indesign
    #targetengine "session"
    app.scriptPreferences.version = 5.0;
    //******************** BEGIN Main ********************
    main();
    function main()
    //** Number 0
    app.addEventListener( "afterOpen", EventOpen, true);
    function EventOpen (itsEvent)
    app.scriptArgs.set("Event_Listener", itsEvent.parent.toSource());
    var myExeSrcFile = new File (app.scriptArgs.get("Event_Open"));
    if (myExeSrcFile.exists)
    myExeSrcFile.open ('r:(read)')
    app.doScript(myExeSrcFile, ScriptLanguage.javascript);
    myExeSrcFile.close();
    alert ("Finished Execution"); //*** Debug: Confirms HANDLER termination
    else
    alert ("Error! Missing File:\n\n" + myExeSrcFile.fsName);
    return;
    =================================================================
    The scriptArgs are defined during a Startup Script. The "Event_Listener" passes the document opened as an argument to the script and is correctly evaluated w/i the "Event_Open" script.

    Hi Harbs,
    I get your point but can't apply it.
    doc = File(mypath)
    doc.pageItems.length > error
    doc.filePath = mypath > error (read-only)
    doc = File(mypath).open() > error
    Do you mean if(app.documents[0].filePath = mypath)...?
    thx
    Loic

  • [JS] CS3 and later. Sort the Swatches alphabetically

    Is there a way to sort the swatches, like I did for the paragraphStyles, characterStyles, and so on...?
    There is no swatches[x].move(Location_option) in CS3 nor CS4 like paragraphStyles have.
    Would CS5 have it?
    Thanks, Alex.

    Ok. More fixes posted at the original link:
    http://ajarproductions.com/blog/2013/12/13/sort-swatches-in-adobe-inde sign/
    Now includes:
    Case-insensitive sorting
    Error checking for certain Pantone colors that cannot be edited with a script
    An alert that tells you which Swatches could not be sorted automatically
    Automatically undoes the temporary name if a swatch cannot be edited
    New code for those interested:
    #target indesign
    * Sort Swatches
    * Created by Ajar Productions
    * http://ajarproductions.com
    * version 1.2.0
    (function() {
    var debug = false;
    if(debug) $.writeln('--------');
    app.doScript(sortSwatches, ScriptLanguage.JAVASCRIPT, [], UndoModes.ENTIRE_SCRIPT); //can undo entire script
    function sortSwatches(){
        var docOpen = (app.documents.length > 0);
        var doc = (docOpen) ? app.activeDocument : null;
        var swatches = (docOpen) ? doc.swatches : app.swatches;
        var colors = (docOpen) ? doc.colors : app.colors;
        var tints = (docOpen) ? doc.tints : app.tints;
        var inks = (docOpen) ? doc.mixedInks : app.mixedInks;
        var gradients = (docOpen) ? doc.gradients : app.gradients;
        var swatchNames = swatches.everyItem().name;
        swatchNames = swatchNames.sort(customSort);
        var i = 0, len = swatchNames.length, tempSwatch, iSwatch, props, iType, unsorted = [];
        for(i;i<len;i++){
            try{
                iSwatch = swatches.item(swatchNames[i]).getElements()[0];
                iType = iSwatch.constructor.name;
                props = iSwatch.properties;
                collection = colors;
                switch(iType){
                    case 'Tint':
                        iSwatch.tintValue += .01; //avoid duplicate
                        tempSwatch = tints.add(props.baseColor, props);
                        iSwatch.remove(tempSwatch);
                        break;
                    case 'MixedInkGroup':
                    case 'MixedInk':
                        unsorted.push(props.name);
                        break; //creates error -- skip for now
                        iSwatch.name = new Date().getTime() + ''; //produce unique value
                        tempSwatch = inks.add(props.inkList, props.inkPercentages, props);
                        iSwatch.remove(tempSwatch);
                        break;
                    case 'Swatch':
                        unsorted.push(props.name);
                        break; //ignore [None]
                    case 'Gradient':
                    case 'Color':
                        try{
                            iSwatch.name = new Date().getTime() + ''; //produce unique value
                        } catch(e) {
                            unsorted.push(props.name);
                            break;
                        tempSwatch = (iType == 'Gradient') ? gradients.add(props) : colors.add(props);
                        try{
                            iSwatch.remove(tempSwatch);
                        } catch(e) {
                            tempSwatch.remove();
                            iSwatch.name = props.name;
                            unsorted.push(props.name);
                        break;
            } catch(e) {
                unsorted.push(props.name);
                if(debug) $.writeln(props.name +', ' + iType + ': ' + e + ', line: ' + e.line);
        if(unsorted.length) alert('Operation complete. The following swatches could not be sorted automatically:\r' + unsorted.join('\r'));
        function customSort(a,b){
            var aN = parseInt(a), bN = parseInt(b);
            if(isNaN(aN)){
                if(isNaN(bN)) {
                        var aL = a.toLowerCase(), bL = b.toLowerCase();
                        if (aL < bL) return -1;
                        if (aL > bL) return 1;
                        return 0;
                return 1;
            } else if(isNaN(bN)){
                return - 1;
            } else return aN - bN;

  • DoScript VBScript to VBScript?

    I would like to have serveral common VBScripts that are run by different VBScripts. Would the DoScript command be the correct choice to do this? Below is a script that I'm working on that has several Functions. I would like to put each Function in a separate VBScript. I will have maybe 30 or more scripts that all do the same thing, just the size, quantity and template will change (below is for a N12, will also need N10, N24, etc.) and would like to avoid having each script have the same set of Functions.
    Thanks,
    Archie
    Rem N12 Script
    Rem SCRIPT INFO
    Rem -----------
    Rem Copyright Mindware Corporation Of America
    Rem Author: Archie O Tucker
    Rem Created: 03/03/08
    Rem Revised:
    Dim myInDesign
    Set myInDesign = CreateObject("InDesign.Application.CS3")
    Set myDialog = myInDesign.Dialogs.Add
    Set FileSys = CreateObject("Scripting.FileSystemObject")
    Rem SET VALUES
    Rem ----------
    Dim MountSize
    Dim TemplateFolder
    myMountLetter = "N"
    myMountSize = "12"
    myMountNumber = "8"
    myTextFolder = "E:\sxs\pm65\CA\"
    Rem myTextFolder = "X:\SXS_Test\pm65\CA\"
    myTemplateFolder = "E:\SXS\ID\"
    Rem myTemplateFolder = "X:\SXS_Test\ID\"
    myBatchFolder = "E:\SXS\ID\"
    Rem myBatchFolder = "X:\SXS_Test\ID\"
    myTemplateName = myTemplateFolder + myMountLetter + myMountSize + ".indt"
    Rem DISPLAY DIALOG
    Rem --------------
    myDialog.Name = myMountLetter + myMountSize + " Autobatch "
    Set myDialogColumn = myDialog.DialogColumns.Add
    set myBorderPanel = myDialogColumn.BorderPanels.Add
    set mySubDialogColumn = myBorderPanel.DialogColumns.Add
    Set myBatchNumberLabel = mySubDialogColumn.StaticTexts.Add
    myBatchNumberLabel.StaticLabel = "Batch Number: "
    Set mySubDialogColumn = myBorderPanel.DialogColumns.Add
    Set myBatchNumberField = mySubDialogColumn.TextEditboxes.Add
    myBatchNumberField.EditContents = "65926C" REM *** For Testing ***
    myBatchNumberField.MinWidth = 100
    myResult = myDialog.Show
    If myResult = True Then
    myBatchNumber = myBatchNumberField.EditContents
    myOpenTemplate myDocument, myTemplateName
    myDefineColors myDocument
    myPlaceText myDocument, myTextFolder, myMountSize, MyBatchNumber
    myMakeTextFit myDocument
    myPlaceGraphics myDocument, myMountNumber
    mySaveBatch myInDesign, myBatchFolder, myBatchNumber
    myCloseTemplate myInDesign
    myDialog.Destroy
    Else
    myDialog.Destroy
    myCloseTemplate myInDesign
    End If
    Rem OPEN TEMPLATE
    Rem -------------
    Function myOpenTemplate (myDocument, myTemplateName)
    Set myDocument = myInDesign.Open(myTemplateName, True)
    End Function
    Rem PLACE TEXT FUNCTION
    Rem -------------------
    Function myPlaceText (myDocument, myTextFolder, myMountSize, myBatchNumber)
    Set myTextFrames = myDocument.TextFrames
    Set myFirstFrame = myTextFrames.Item(1)
    myFirstFrame.Place (myTextFolder + myMountSize + "_" + myBatchNumber + ".TXT")
    MsgBox "Ok:"
    End Function
    Rem MAKE TEXT FIT
    Rem -------------
    Function myMakeTextFit (myDocument)
    Set myCurrentFrame = myDocument.TextFrames.Item(1)
    myHorizontalScale = 100
    Do While myCurrentFrame.overflows = true
    myHorizontalScale = myHorizontalScale - 1
    Set myText = myCurrentFrame.Characters.Item(1)
    With myText
    .HorizontalScale = myHorizontalScale
    End With
    Loop
    End Function
    Rem PLACE GRAPHICS
    Rem --------------
    Function myPlaceGraphics (myDocument, myMountNumber)
    For I = 1 to cInt(myMountNumber)
    Rem For I = 4 to myDocument.TextFrames.Count
    Set myCurrentFrame = myDocument.TextFrames.Item(I)
    myCharacterCount = MyCurrentFrame.Characters.Count
    If myCharacterCount > 0 Then
    If left(myCurrentFrame.Texts.Item(1).Contents,7) = "[place=" Then
    myFile = Mid(myCurrentFrame.Texts.Item(1).Contents,8)
    myFile = Split(myFile,"]")(0)' get all to "]"
    Set myGraphic = myDocument.Pages.Item(1).Place (myFile)
    Set myGraphic = myGraphic.Item(1)
    Set myRectangle = myGraphic.Parent
    myGraphicBounds = myRectangle.GeometricBounds
    myGraphicWidth = myG

    From the list of available references, select Adobe InDesign CS5 Type Library, and click OK. If the library
    does not appear in the list of available references, click Browse and locate and select the file Resources
    for Visual Basic.tlb, which is usually inside C:\Documents and Settings\<username>\Application
    Data\Adobe\InDesign\Version 7.0\Scripting Support\ (where <username> is your user name).
    If necessary, search for the file. Once you locate the file, click Open to add the reference to your project
    Ensure that you have the tlb file in place if you want exploar the file to see if this recomento corrupted the following software:
    http://www.teusdejong.nl/thome/ho_body5.html

  • How to solve the Error in Action for illustrator cs3

    Through action in illustrator cs3 i changed the document mode RGB to CMYK via Visual Basic. But sometimes it throws 2 different kinds of error messages.
    CODE:
    appRef.DoScript "Change", "Convert"
    While (appRef.ActionIsRunning)
    WScript.sleep 1000
    Wend
    Error 1:
    Could not complete the Play Command because the action is playing.
    Error 2:
    The Object "Document Color Mode: CMYK Color" is not currently available.
    Could you please explain how to solve this error.

    The input data provided as the first argument to ore.tableApply and rqTableEval are physically being moved from Oracle Database to the database server R engine, and then serially operating on the entire table  The benefit to using ore.tableApply/rqTableEval in this case is the potentially greater amount of RAM on the database server.  But it's important to note that R’s memory limitations still apply in this case.
    You may have already seen the blog post on Managing Memory Limits and Configuring Exadata for Embedded R Execution where we discuss setting memory limits for the database server R engine. These suggestions can be used to load reasonably sized data tables, and you may still encounter limitations when using a very large table.
    In contrast to the "table apply" functions, the "group Eval" and "row eval (" functions are parallel-enabled embedded R execution functions. They support data-parallel execution, where one or more R engines perform the same R function, or task, on different partitions of data. The following training and blog links should be helpful in choosing the correct function for your use case:
    http://www.oracle.com/technetwork/database/database-technologies/r/r-enterprise/learnmore/ore-1-4-embedded-r-execution-s…
    http://blogs.oracle.com/R/entry/invoking_r_scripts_via_oracle1
    http://blogs.oracle.com/R/entry/invoking_r_scripts_via_oracle2
    http://blogs.oracle.com/R/entry/invoking_r_scripts_via_oracle3
    http://blogs.oracle.com/R/entry/invoking_r_scripts_via_oracle4
    http://blogs.oracle.com/R/entry/invoking_r_scripts_via_oracle5
    Sherry

  • DoScript Turducken ?! [JS] [AS]

    Is there any other way, besides storing a string value into a script argument to run a  do script turducken style?
    This works, although highly impractical I'm still curious how to do it in one line...
    tell application "Adobe InDesign CS3"
        tell script args
            set value name "my_applescript" value "display alert \"DOSCRIPT TURDUCKEN\""
        end tell
        do script " var my_applescript = app.scriptArgs.getValue(\"my_applescript\");app.doScript((my_applescript), ScriptLanguage.applescriptLanguage);" language javascript
    end tell
    If declare a string value within a statement that already has escaped quotes, it results in the  error: unterminated string constant.
    ~mike

    (Disclaimer: No AS man!)
    Perhaps the escaped quotes need double escaping: \\\" (NOTE: Three backslashes!)
    First way round, it gets parsed into the literal string \", second time it gets parsed into a single "
    [Post-edit thought] [Actually, Pre-post!] What is "Turducken"??

  • Adobe Bridge CS3 windows error

    Hi,
    When I open Bridge cs3 on its own after a few seconds the window banner comes up. Adobe bridge has encountered a problem and needs to close.We are sorry for any inconvenience. The same happens if I try to open bridge from within Photoshop cs3
    I can still work in the programme ok and move the windows error aside, I would like to fix the problem, Tried to debug but the programme just closes.
    I use windows xp pro with all the latest updates that are available.
    have any others experienced this problem and how to fix it.
    Thanking you in advance.

    Mikep500 wrote:
    This is a copy of the message that comes up.
    No messageto see, but you can check your Startup Scripts in Bridge preferences. Mine are like this:

  • Text Wrap options not showing in InDesign CS3

    Using InDesign CS3 on a Mac 10.4.  I've had this problem for a couple of months now and it's getting past the point of annoying.  When I open my text wrap options pallete it's blank even when I expand options.  I can see the text wrap icons in my header panel, but I no longer have options to change the right/left/top/bottom margins.  Just a general "add wrap" and "remove wrap".  Is there any way I can get my pallete back?  I've tried defaulting my tools, but still it does not show up.  I don't know what to do to get it back.

    Did you try resetting preferences? While pressing Shift+Option+Command+Control, start InDesign. Click Yes when asked if you want to delete preference files. If you don't get the message about deleting preferences, you weren't fast enough.
    http://livedocs.adobe.com/en_US/InDesign/5.0/help.html?content=WSa285fff53dea4f86173837510 01ea8cb3f-6d1e.html
    Ken

  • I am unable to open raw files from my Canon T1i in Adobe Camera Raw of my version CS3 of Photoshop.  I have tried to update my ACR by downloading version 4.6 from the Adobe website but I am still unable to open raw files, just JPEG.  Is there a way to use

    I am unable to open raw files taken on my Canon Rebel T1i in my version of Photoshop CS3.  When I import raw files into Bridge they come up as patches with CR2 on them and when clicked on, a notice comes up stating that Photoshop does not recognize these files.  I tried to update my Adobe Camera Raw by downloading version 4.6 from the Adobe Website, but when I clicked on the plus-in, I got another message that Photoshop does not recognize this file.  I spoke with a representative from Canon who said that I could not update CS3 and that I should subscribe to the Cloud.  I would prefer to use my CS3, if possible.  Can anyone advise me what to do?

    The T1i was first supported by Camera Raw 5.4 which is only compatible with CS4 and later
    Camera Raw plug-in | Supported cameras
    Camera Raw-compatible Adobe applications
    Some options:
    Upgrade to CS6
    Join the Cloud
    Download the free Adobe DNG converter, convert all T1i Raw files to DNGs then edit the DNGs in CS3
    Camera raw, DNG | Adobe Photoshop CC

  • Double-click/Drag-&-drop Photoshop files opens application but not file or I get a message saying that some files in Application Support are missing and I have to reinstall. (Photoshop CS/CS2/CS3)

    This is most commonly due to installing Photoshop CS/CS2 <i>before</i> doing an archive and install of Mac OS10.3 or OS10.4.<br /><br />One solution is to reinstall Photoshop 7/CS/CS3 after you have installed Mac OS10.3 or OS 10.4.<br /><br />If you have Photoshop 7 and 8(CS), the easiest way to reinstall Photoshop (without disturbing the original installation) is to install to your desktop. After the install is done just trash the Photoshop folder on the desktop.<br />Note: This will only work with Photoshop 7 and 8(CS) but not with 9 (CS2).<br /><br />Photoshop CS2 you must delete the Photoshop CS2 folder. If you have any 3rd party Plugins or presets remove them from the folder before deleting. Just placing the folder in the trash will not work it must be deleted. After reinstalling CS2 you can now put all 3rd party Plugins and presets back in the new folder.<br /><br />---------------------------<br />Another solution courtesy Anne Shelbourne<br /><br />Open your Previous System folder. <br />Find "Adobe Unit Types". <br />Copy it into: <Your current system Hard Drive>/Library/ScriptingAdditions/<br />Then reboot your Mac.<br /><br />---------------------------<br />However, if you happen to be running a non-English version, like Photoshop CS CE or Photoshop CS ME, it appears the missing file does not get installed. You would need to install and delete the international English version first.

    The problem you got into is a known problem after updating to Tiger. It is a small 4K file that gets trashed with the update. It is called the Adobe Unit Types. Both Photoshop and Photoshop Elements need this file to function.
    One way to get it back is to reinstall Photoshop, the other is to add this file again.
    You can get the file from here http://www.dd.se/Tips/bildbehandling/downloads/AdobeUnitTypes.zip
    It is only 3,7 KB big.
    You put the file you download here:
    [hard disk] /Library/ScriptingAdditions. If you don't have a Scripting Additions folder, you create it.
    As you trashed Photoshop, you need to completely deinstall it to be able to reinstall it.

  • PhotoshopNews: Adobe Photoshop CS3 at a glance!

    http://photoshopnews.com/2006/12/14/adobe-photoshop-cs3-at-a-glance/
    Even more content out there now on the home page of PhotoshopNews.com

    I haven't been able to download CS3 yet, but the Martin Evening pdf (thanks for the link!) has what looks like a piece of great news buried in it:
    "For example, before you first had to create an empty new document with the exact pixel dimensions before you could place an image (such as a raw file) as a Smart Object. With Photoshop CS3, you can now place a raw capture file as a Smart Object layer in a single step."
    If I understand this right, it means that the functionality of the old Dr Brown Place-a-Matic script is now available from Aperture. We can -- or this makes me hope we can -- send a RAW from Aperture to PSCS3 for editing, and then Place the same image, perhaps twice, as a Smart Object, edit away, and when we Save get the whole edited image back in Aperture without going through the Finder.
    I used to use this (from Bridge) all the time to double-expose RAW shots: adjust the sky to one exposure and the ground to another, masking to get both into the final image, all without messing with the pixels of the RAW image. I've missed it. Whoopee.

  • Do I need to install CS3 on Windows 7 64 bit before installing CS5 Upgrade?

    I am replacing a graphic designer's Windows Vista laptop with a Dell Precision T5500 desktop.  Do I need to uninstall CS3 from the laptop and decommission the serial number?  Then do I need to install CS3 on the new desktop before installing the CS5 upgrade?  I was told I needed to decommission the installation, but I don't remember having to do that with other installations.  Thanks in advance!

    You should definetly deactivate any software before uninstalling. But you don't have to install CS3 in order to install CS5. Just have the serial number handy for verification. That said, depending upon the user's needs, you might want to leave CS3 available.
    Bob

Maybe you are looking for