Announcement

Collapse
No announcement yet.

Run older programs using Vista

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Run older programs using Vista

    Has anyone used the program compatibility wizard to run older programs with Vista?

    http://www.pctipsbox.com/run-an-olde...windows-vista/

  • #2
    You should basically be able to do the same thing just by setting the properties for the program's shortcut. If you really need to go "old school" with an application, then right-click on the shortcut, select Properties and then the Compatibility tab. For example, here's how I have things setup for Visual Basic 6.0:



    With those settings, basically the application is going to work just as it did on XP. Sometimes it's not necessary to disable themes or desktop composition (the Aero interface with transparency, etc.) but in the case of VB6 you need to do it otherwise the form designer doesn't work correctly.
    Attached Files
    Mike Stefanik
    sockettools.com

    Comment


    • #3
      Thanks!
      Isl InnoSetup or other installation programs allowed to create
      a program folder like c:\demo? Without the folder the shortcut
      to c:\demo\program.exe will not be found.

      Comment


      • #4
        Installers run with administrative privileges, so they can create folders anywhere on the local system. Generally speaking, it's recommended that you install programs under C:\Program Files (or the localized equivalent) rather than off the root of the disk. However, Vista won't stop the installer from creating a folder there if that's really where you want things to go.
        Mike Stefanik
        sockettools.com

        Comment


        • #5
          Very good news. I have lots of programs out there that might need to be moved. What do you do with old programs where the user didn't want to pay for support 20 years ago?
          I'll try to go by the new installation standards by updating my InnsoSetup.
          Thanks for all your postings on this subject.

          Comment


          • #6
            In most cases I don't think you'll have a problem. With legacy applications on Vista, probably the most commonly encountered issue is programs that assume that they can create files in their own directory, rather than asking Windows for a location to store them. They may also attempt to create registry keys in places like HKEY_LOCAL_MACHINE\Software.

            In that case, Vista uses what's called "virtualization" where file I/O and registry access are silently redirected to a user-writable location. It's something completely transparent to the user and your application, but it can be confusing if you go hunting for that file and can't find it.

            An example. Let's say your program is installed in C:\Program Files\MyProduct and on XP and earlier, you used an INI file to store configuration data in the same folder as the executable. So the path to the INI file would be something like C:\Program Files\MyProduct\MyProgram.ini

            On Vista, if you attempt to create and/or modify that file, the operating system knows that C:\Program Files is protected and the file I/O will fail because the user won't have the appropriate privileges to create the file. So, it will silently redirect that file I/O to C:\Users\UserName\AppData\Local\VirtualStore\Program Files\MyProduct\MyProgram.ini where the user will have permission to create and modify that file. Again, this is something that your program doesn't even need to be aware of. But if your customer called for support and you said "Okay, email me your INI file" they wouldn't find it where you expected it to be. It would be in the "virtual store" instead. Just something to be aware of for situations like that.
            Mike Stefanik
            sockettools.com

            Comment


            • #7
              Set the compatibility programmatically

              This code worked on XP. You can try it on Vista.

              Code:
              SUB SetCompatibility(BYVAL sEXEPath AS STRING)
                  IF VersionXP = 1 THEN
                      SetRegValue %HKEY_CURRENT_USER, "Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers", _
                                      sEXEPath, "WIN2000"
              
                  END IF
              END SUB
              Peter Redei

              Comment


              • #8
                Clean install or update?

                If a clean install is performed MANY old programs will have to be reloaded into the vista test partition 2 on a multi-boot setup. I've cloned XP SP3 into 2 partitions and will update the 2nd partition. Would just doing the update be a bad choice because the update will sugar coat some of the problems that might occur? Getting new video adaptor and performing today. OEM copy or Microsoft copy (make any big difference?)
                Clean install with update:
                http://www.winsupersite.com/showcase...install_03.asp


                the Windows XP license is forfeited
                That doesn't sound good.
                http://www.neowin.net/index.php?act=view&id=37711
                Last edited by Mike Doty; 6 Aug 2008, 07:05 AM.

                Comment


                • #9
                  By the time I update the machine, I can buy a refurbished one with Vista that is better.
                  I wasn't planning on finding a 64-bit while at it. Should check on prices more frequently.
                  I'll know anyway in 2-days. Got the fast one.

                  64-bit machine with Vista for $249
                  http://www.compusa.com/applications/...sku=E400-T5246
                  http://www.compusa.com/applications/...458&CatId=2663
                  http://www.compusa.com/applications/...ay+refurbished
                  http://www.compusa.com/applications/...D&body=REVIEWS
                  Last edited by Mike Doty; 6 Aug 2008, 11:43 AM.

                  Comment

                  Working...
                  X