What does DIAdem do to keep track of multiple versions of itself?

I am using an automation reference to open up DIAdem. I have 8.1 and 9.0 installed. If I run DIAdem 8.1 and close it, then the reference gives me 8.1. If then I run DIAdem 9.0, the reference gives me 9.0. So the computer must be keeping track of the program that was run most recently. How does it do this?

I don't have two versions on this computer so I can't play with it to find the exact key, it's probably going to be under HKEY_CLASSES_ROOT\TypeLib\ somewhere, but it'll be under the Class ID rather than the name.
Regards,
Ryan K.

Similar Messages

  • What do you use to keep track of your to-do items? pen/paper, notepad, software?

    Spiceworks Help Desk and Google Keep are my go-tos.

    just curious what other spiceheads use to keep track of all their daily tasks. sometimes pen/paper or a notepad with tasks lists don't seem to cut it.  need something more fluid.
    This topic first appeared in the Spiceworks Community

  • Why does Adobe Flash Player keep crashing and then apparently uninstalling itself?

    why does Adobe Flash Player keep crashing and then apparently uninstalling itself? Is this not clear enough?

    From System Preferences > Preference Pane click on FlashPlayer > Storage and see what you have selected for options.

  • How does DIAdem keep track of which version is active when multiple versions are installed?

    I need a way to find out which version of DIAdem is active, without creating an automation reference. How does DIAdem keep track of this? I don't think it's through the registry as far as I can tell. Thanks.

    Hi,
    I'm not quite sure what you mean by "version of DIAdem is active". If you are trying to reference DIAdem from an external program, you will need to use an automation reference. Besides this case, I am not sure what you are referring to.
    Perhaps a short description of your application or intended use will help me point you in the right direction.
    Allen P.
    National Instruments

  • Keeping track of multiple projects

    I have an 84min movie I made years ago and want to edit a 3min trailer and a longer 12min trailer from footage I captured via the original VHS 4:3 transfer to mini-DV. I want to maintain the original 4:3 transfer but add 16:9 mattes to the two trailers.
    My concern is how to keep track of the various versions I want to make. I have already created a New Project for the full 84 min 4:3 and created a 2nd New Project that I put a 16:9 matte over. Framing is quite good too.
    I plan to make new projects for each version unless there's an easier way to keep track of everything. Nesting is also a consideration but I've never really done that before.
    Any comments, suggestions, warnings, etc. greatly appreciated.

    Not sure I understand what's wrong with the way you are doing it now.... creating new projects for each change? Or you could have one project with different sequences for each change.... Should be simple to keep track of things as long as you come up with a naming convention that works for you and then stick to it.
    rh

  • Keeping Track of multiple servers getting security updates

    I have over 1000 servers that I schedule security update deployments monthly. I have servers in the Americas, Europe and Asia.  There are several different schedules during a deployment cycle to accommodate the geographical location of each
    server. I've been keeping track, using a spreadsheet if the servers were patched successfully with SCCM or not. If they weren't, I would troubleshoot to see if there is an SCCM client issue, not enough space on the drive, the server in a hung state, etc.
    I check the reports as well, but if there is an SCCM client issue, that machine may not show up on the report. My point is I'm keeping track of the patching by using a spreadsheet. With all this information on mind, does someone have a better method of
    keeping track of a high multitude of servers when they have successfully patched?

    I'm using a dashboard for my patching process. Take a look at this post, I'm using something similar: http://blogs.technet.com/b/gary_simmons_mcs/archive/2014/09/16/system-center-2012-r2-configuration-manager-software-update-compliance-dashboard-part-1.aspx
    Gives me the right summary, and a better view of things with quick access to the underlying reports.
    Martin Bengtsson | www.imab.dk

  • Keeping track of multiple tables

    I'm creating multiple tables by resuing the same JTable object and merely changing and the tablemodel associated with it. The number of tables I have are based on the number of data tables I have.
    Right now I have an Mouselistener attached to my tables to register which rows and columns have been clicked on. My question is, how do I keep track of which table the row and column come from? Any suggestions?
    Thanks in advance.

    I won't do a lecture on Java object and reference here.
    If a single JTable keeps changing its model or model data, it's simply no problem.
    Are you going to do that?
    However,
    JTable t0, t1, t2, t3, ... ;
    t0 = new JTable(model0);
    t1 = t2 = t3 = ... = t0;
    /* and, somewhere else ... */
    t1.setModel(model1);
    /* again elsewhere */
    t2.setModel(model2);
    .....This is certainly a disaster.
    how do I keep track of which table the row and column come from?Define a custom class for object for managing table meta data. And use a Collection or a Map
    for storing them. Or, simple set of meta data can be stored in your table model object that
    extends DefaultTableModel. Don't extend AbstractTableModel -- that is often unnecessary
    and often can be a futile, bogging and nightmarish effort. Keep yourself away from it.

  • Does the app store keep track of your purchases? Can you re-download?

    Had a company laptop & iPhone. Bought some apps, had them on both. Lost the job and hence the laptop & iPhone. Bought a new iPhone. Installed iTunes on home PC. Can I get access to the purchased apps even though I can't access the original devices anymore? Or do I have to buy them again?

    You do not need to buy them again. Once you have purchased an app, you can download it for free at any time. The only trouble will be finding your apps. On iTunes on your computer, go to the "iTunes Store" and click on My Account and navigate to purchase history after logging in.

  • What does it mean 32-bit and 64-bit versions of forms

    could anybody please explain me what exactly it means the 32-bit and 64- bit form versions. is the concept same in oracle database versions too ?

    Something similar :
    http://www.teachmeoracle.com/version02.html
    and
    http://www.teachmeoracle.com/version03.html

  • What does this line of code do: ?xml version="1.0" encoding="windows-1252"?

    When I add this code to a new xhtml file and validate for XML I get the following error: Character Encoding mismatch! [XHTML 1.0 Transitional]

    Google says: http://www.w3schools.com/xml/xml_encoding.asp
    If this is of no help, you'll need to give a little more info - like what did you do, the code, why your using a windows encoding etc.

  • What does iTunes FORCE YOU to download the last version of their software to use their store? The new program is too much for my computer!

    This totally *****...iTunes 10 is too much of a memory hog for my POS computer. I have to turn off all other apps just to use it and even then it still runs SLOW. I think iTunes = Extorition. Why force us to use it? They just want to track your personal data. That's pretty evil. The best iTunes version for my computer was iTunes 7. But it won't let me use store on iTunes 7. F@#$*%s!
    Instead of making the program more streamlined, they make the next version LARGER FILE SIZE and more of a memory hog. 
    Apple should be making each successive version a SMALL FILE SIZE and less of a drain on memory.

    ds store wrote:
    The problem is a lot of PC's are sold cheap with 5 year old processors and graphic cards in them.
    Windows doesn't defrag on the fly, you have to run anti-virus all the time. The PC vendor installs all their "crapware" on the machine too.
    Also most PC's don't come with hardly any RAM neither, most people don't know computer specs, don't know how to look up their prospetive machine on the internet and see if they are getting their money's worth.
    Microsoft is a enemy too, they allow "toolbars" Acive X and purposely bloat their operating system so it forces you to buy a new one.
    At least with iTunes you have a choice to buy your music ANYWHERE, you could have kept on using iTunes 7, just you would have had to buy your music via cd's or another website like Amazon etc.
    Microsoft has really bloated down the last few updates of Windows, I replaced all the old Dells with 512MB of RAM and 16 year old single core Cellerons with copies of Linux Like XP so the seniors at a local center can still get on the internet if they need too.
    Still even with that the last few updates of Linux have been a bit rough for those old machines, but for the net that's good enough.
    LOL! 
    (Although I don't know if the OP will be in the mood to "get it.")

  • What does "UNINSTALL" mean? I want to downgrade versions. Have a Mac.

    I want to downgrade to 3.6.x. I have a Mac. Do not understand what "uninstall" means OR how to do it. Thoughtful person at home "upgraded" me BUT alas 4.0.x NOT compatible with work!

    Download a new copy of the Firefox program and save the DMG file to the desktop
    * Firefox 4.0.x: http://www.mozilla.com/en-US/firefox/all.html
    * Trash the current Firefox application to do a clean (re-)install
    * Install the new version that you have downloaded
    Your profile data is stored elsewhere in the [http://kb.mozillazine.org/Profile_folder_-_Firefox Firefox Profile Folder], so you won't lose your bookmarks and other personal data.

  • Time Machine does not backup the HD, but an old version on itself!

    I had to find a file in a Time Machine backup of my Macbook Air running Lion, to transfer it to my desktop computer.
    To my horror, the entire TM backup was NOT of my Air as it was when I did the backup yesterday, but of 5 months earlier! So I checked a whole string of TM backups over the last couple of months and they were all the same! Even though 100's of files have been added, deleted and edited  since then. TM seems to be copying old backups from its own folder on the backup drive! I've had to manually copy my Air onto a new folder in the backup drive, to be safe.
    I cannot find anything about this problem in the forums or on http://pondini.org/TM/Troubleshooting.html
    Can anyone help please?

    Time Machine will only back up HFS+ (Mac OS Extended) formatted drives. Reformatting will erase the drive so make sure everything on it is safely copied elsewhere and verify a few test files before erasing the drive. Getting rid of the FAT32 formatting has been problematic for quite a few people. The directions in this article are for good for getting rid of the FAT32 formatting. They are for formatting a Time Machine disk but the directions will work just as well for your purposes.

  • Keeping track of the number of hits

    Hi,
    I'm developing a website in JSP and what I want is to keep track of how many times a link on my site has been clicked on...
    Let me explain a little further: I have a links section with all types of links and i want to know how often these links are used
    Now, what's the "best" solution for this problem?
    Putting my links in a database or a just a file or XML, and how can I detect when someone has clicked on that link?
    Every solution is welcome
    Thx in advance
    GekkeGwuido

    The traditional way to do this is with a redirect. Basically you have a servlet or JSP that will be called anytime anyone clicks on a like. It contains a redirect parameter. For example, your HTML might look something like:
    <a href="http://www.yourdomain.tld/redirector.jsp?linkid=1234" />Then, in redirector.jsp you look up in, likely, a database what linkid 1234 is. Assuming you find it you update your database with whatever information you want about link 1234 and send a redirect to the URL that link 1234 is for.

  • How to keep track of all the classes/methods/properties created in a long script

    Hi,
    I'm curious to know what method people use to keep track of all the classes, methods, and properties you've created when writing a longer script.
    For quick scripts, this isn't a problem. But for long scripts it can get quite difficult to keep track of all the objects one has created, and all their methods and properties, and overloaded constructors, etc.
    ESTK is great, and it's the IDE I use for InDesign scripting, if only because of it's powerful debugging options.
    But it doesn't provide any way of keeping track of this stuff. No proper Intellisense as in Visual Studio.
    I'd be interested to hear how people solve this issue.

    Hi Ariel,
    Not sure it is relevant to your question but I have an old snippet that collects and displays ExtendScript references using $.list(). This may help to track some object relationships.
    // WARNING: this is just a WIP -- Not tested in all platforms and versions
    $.scanRefs = function scanRefs(/*0|1*/showAll)
        var s = $.list(),
            p = (!showAll) && s.indexOf('[toplevel]'),
            a = ((!showAll) ? s.substr(0,10+p) : s).split(/[\r\n]+/),
            n = a.length,
            // --- Address:1     L:2  Rf:3   Pp:4  Type:5  Name:6
            re = /^([0-9a-z]{8}) (.) +(\d+) +(\d+) (.{10}) (.{1,17})/,
            reTrim = / +$/,
            i, t, k, m,
            refBy, type, name, tag, rest, rfCount, props, j,
            o = {},
            TYPES = {'Function':"FCT", 'Object':"OBJ", 'Array':"ARR", 'RegExp':"REG"};
        for( i=2, refBy=0 ; i < n ; ++i )
            s=a[i];
            while( s && m=s.match(re) )
                k = '&'+m[1].toUpperCase();
                rfCount = parseInt(m[4],10);
                rest = s.substr(m[0].length);
                type = m[5].replace(reTrim,'');
                name = m[6].replace(reTrim,'');
                if( 0x5B==rest.charCodeAt(0) )
                    p = rest.indexOf(']');
                    tag = rest.substr(0,1+p);
                    rest = rest.substr(1+p);
                else
                    tag = '';
                if( 0x20==rest.charCodeAt(0) )
                    rest=rest.substr(1);
                if( p=!(rest.indexOf("referenced by:")) )
                    rest = rest.substr(14);
                o[k] || (o[k] = {
                    locked:        +('L'==m[2]),
                    rfCount:    parseInt(m[3],10),
                    ppCount:    rfCount,
                    type:        TYPES[type]||type,
                    name:        name,
                    tag:        tag,
                    from:        [],
                    order:        -1,
                if( 0 < refBy )
                    if( p || !rest ){ throw "Unable to parse references." }
                    props = rest.split(' ');
                    refBy -= (j=props.length);
                    while( j-- ) t.from.push([k,props[j]]);
                    (props.length=0)||(props=null);
                    rest = '';
                else
                    refBy = rfCount;
                    if( p != !!refBy )
                        if( p ){ throw "Unable to parse references."; }
                        refBy = 0;
                    (t = o[k]).order = n - i;
                (m.length=0)||(m=null);
                s = rest;
        a.length=i=0;
        for( k in o )
            if( !o.hasOwnProperty(k) ) continue;
            a[i++] = k;
        a.sort( function(x,y){return o[x].order-o[y].order;} );
        //a.sort( function(x,y){return parseInt(x.substr(1),16)-parseInt(y.substr(1),16);} );
        var u,
            pngLock = "\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\x0E\x00\x00\x00\x0E\b\x06\x00\x00\x00\x1FH-\xD1\x00\x00\x00\tpHYs\x00\x00\x0B\x13\x00\x00\x0B\x13\x01\x00\x9A\x9C\x18\x00\x00\x01VIDAT(\xCF\xA5\x91\xB1j\xC2P\x14\x86\x93\xD6\x94\x98\xA4\xB5\xA5\x85\x0E-R\xAF\xA5\xB8\xF4\x1D\xAA\xEF\x10_B\x9C\xDD\x0B]\xA4o`C\xE9$B\x1C\xCD\x10\x10C6\x05q\td\xA9%\x83d2\x83O\xF0\xF7\xDCp#i\xB5\x1D\xDA\xC0\xC7\xB97\xE7|\xF7\xDC\xCB\x91\x00H\x7FA\xFA\xB7\x98\xFF\xAA\xD5\xEA\x0B\x855\xC1\x13k\xDA\xBF\xEA\x9A\xA6\x9C\x18\xC6\xC1\xB6\xE8\xBBHE\x16\x85w\xC6\xD8\xE3\x91\xA2\xDCQ|\xA2\xFD\x07\xC57\xADXT\x8B\xAAz\xB8#\x8A\x13\xD7\xBC\xD8\xD0\xB4kC\xD7\x19q\xCB*\x95g\xFA\x9FP\xD7\x0B\x8A\n!oE.\xB5Z-\xEC\xA3\xD9l\xA2\xFEP\x07\x1D\xC8;\x18D!/\x16x\x91\xEF\xFBX.\x97\xD8l6H\x92$]O\xA7S\x8CF#\x887\x9F\x13j^T\xB9\xD8\xE9t0\x99L\x10\xC71V\xAB\x15\x82 \xC0\xD0\x1E\xA2\xDDng\xE2\x15q\x9C\x175.:\x8E\x83\xC5b\x81(\x8A \xCB2\xE6\xF39\\\u00D7E\xBF\xDF\xCF\xC4\x1B\xE24/\x1A\\\u00ECv\xBB\xF0<\x0Fa\x18\xA2\xD1h`<\x1E\xC3\xB2,\x98\xA6\x99\x89\x8C8\xDB\x11\x07\x83AzU\xDEu6\x9B\xA5\xA2m\xDB\xE8\xF5z?\x8B4\xC3,\xF9\x1B_E1\x9F\x12Q&j\xC4\xFD\x1Ej\"_\xCA\x8B\x051\xA3K\x91d{(\x8B\xBC\xFE\t\xC1TI!\xE3L\x03\x7F\x00\x00\x00\x00IEND\xAEB`\x82",
            pngNop = "\x89PNG\r\n\x1A\n\x00\x00\x00\rIHDR\x00\x00\x00\x0E\x00\x00\x00\x0E\b\x03\x00\x00\x00(\x96\xDD\xE3\x00\x00\x00\x03PLTE\x00\x00\x00\xA7z=\xDA\x00\x00\x00\x01tRNS\x00@\xE6\xD8f\x00\x00\x00\x15IDATx\xDA\xDD\xC1\x01\x01\x00\x00\x00\x80\x90\xFE\xAF\xF6#\xDA\x01\x00\xD2\x00\x01\xCC \x10\x14\x00\x00\x00\x00IEND\xAEB`\x82",
            w = new Window('dialog', " ExtendScript Memory"),
            p1 = w.add('panel', u, "References"),
            lRefs = p1.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Address", "Type", "Name", "Refs"],
                columnWidths: [90,60,120,36],
            g = w.add('group'),
            pFrom = g.add('panel', u, "From"),
            lFrom = pFrom.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Address", "Type", "Name", "Property"],
                columnWidths: [90,60,120, 120],
            pTo = g.add('panel', u, "To"),
            lTo = pTo.add('listbox', u, "",
                numberOfColumns: 4,
                showHeaders: true,
                columnTitles: ["Property", "Address", "Type", "Name"],
                columnWidths: [120,90,60, 120],
        g.orientation = 'column';
        w.orientation = 'row';
        w.alignChildren = ['left','top'];
        lRefs.maximumSize = lRefs.minimumSize = [330,450];
        lFrom.maximumSize = lFrom.minimumSize = [420,120];
        lTo.maximumSize = lTo.minimumSize = [420,220];
        lRefs.onChange = function()
            lFrom.removeAll();
            lTo.removeAll();
            lFrom.parent.text = "From";
            lTo.parent.text = "To";
            if( !this.selection ) return;
            var key = '&'+this.selection.text,
                t = o[key],
                from = t.from,
                i = from.length,
                k;
            lFrom.parent.text = "["+key.substr(1)+"] is reachable from " + t.ppCount + (1<t.ppCount ? " properties" : " property");
            if( t.ppCount && !i )
                with( lFrom.add('item', '--------') )
                    image = pngNop;
                    subItems[0].text = '';
                    subItems[1].text = '<UNKNOWN REFERRER>';
                    subItems[2].text = '';
            while( i-- )
                k = from[i][0];
                t = o[k];
                with( lFrom.add('item', k.substr(1)) )
                    image = t.locked ? pngLock : pngNop;
                    subItems[0].text = t.type;
                    subItems[1].text = t.name + ' ' + t.tag;
                    subItems[2].text = from[i][1];
            for( k in o )
                if( !o.hasOwnProperty(k) ) continue;
                t = o[k];
                from = o[k].from;
                i = from.length;
                while( i-- )
                    if( from[i][0]!=key ) continue;
                    with( lTo.add('item', from[i][1]) )
                        image = pngNop;
                        subItems[0].text = k.substr(1);
                        subItems[1].text = t.type;
                        subItems[2].text = t.name + ' ' + t.tag;
            lTo.parent.text = "["+key.substr(1)+"]'s properties had access to " + lTo.items.length + " addr.";
            from = t = null;
        for( i=0, n=a.length ; i < n ; ++i )
            t = o[k=a[i]];
            with( lRefs.add('item', k.substr(1)) )
                image = t.locked ? pngLock : pngNop;
                subItems[0].text = t.type;
                subItems[1].text = t.name + ' ' + t.tag;
                subItems[2].text = t.ppCount + '/' + t.rfCount;
        w.show ();
    // TEST
    var t;
    var f = function MyFunc()
        (function MyInnerFunc(){})();
    $.scanRefs(1);
    @+
    Marc

Maybe you are looking for