Navigation

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    bin/protopenv.bat stamps the DLC directory as the one that was used at install

    Using ProTop
    2
    7
    3801
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • jdpjamesp
      jdpjamesp last edited by

      Usually this is fine, particularly on a server, but if I already have a %DLC% variable set I don't really want protop overwriting it. I have 5 Progress versions installed in order to provide support in the correct version for the relevant customer. If I want to look at CRUD stats whilst developing I need ProTop to connect to the DB with the correct version of shared memory.

      I've updated the top of my protopenv.bat as follows:

      @echo off

      IF DEFINED DLC (ECHO DLC IS defined) ELSE (set DLC=C:\Progress\OP3395~1)
      set PROTOP=C:\ProTop
      set LOGDIR=C:\ProTop\log
      set TMPDIR=C:\ProTop\tmp
      set RPTDIR=C:\ProTop\rpt
      set PROXY=

      tom 1 Reply Last reply Reply Quote 0
      • tom
        tom administrators @jdpjamesp last edited by

        I'm sorry but I do not understand the problem. Nor the solution.

        I might be having a bad day but I'm coming up empty trying to figure out what the issue is.

        1 Reply Last reply Reply Quote 0
        • jdpjamesp
          jdpjamesp last edited by

          Sorry Tom. I'll try and explain. I installed ProTop from the 11.7 64bit Proenv. The protopenv.bat was given the DLC directory to match. But when I want to use ProTop to monitor a database that has been started under 11.6 32 bit, for example, I start that proenv and "protop dbname". But now the protopenv.bat runs and overwrites the DLC variable for 11.6 with that of 11.7 that is hard coded in the batch file. I then get shared memory version errors.
          The solution I've put in only sets DLC to the hard coded one if it isn't already set by some other means - in other words, if we're running proenv with DLC already set, please don't stamp all over it with a hard coded version.
          If that still doesn't help explain then maybe I can show you on Skype at some point?

          1 Reply Last reply Reply Quote 0
          • tom
            tom administrators last edited by

            I think I get it. You want Windows to behave like UNIX 🙂 You know, you could just apply The Linux Patch 😉

            The UNIX protopenv sets DLC like this:

            DLC=${DLC-/usr/dlc117}
            

            Thus DLC only picks up the "install" value if it is not already defined. That seems to be what you are doing with:

            IF DEFINED DLC (ECHO DLC IS defined) ELSE (set DLC=C:\Progress\OP3395~1)
            

            I guess I could probably tweak protopenv.bat to accommodate that.

            1 Reply Last reply Reply Quote 0
            • jdpjamesp
              jdpjamesp last edited by

              Yes that sounds exactly what I am trying to achieve 😄

              1 Reply Last reply Reply Quote 0
              • tom
                tom administrators last edited by

                I had a bad result with this - it seems to interfere with the icons somehow.

                (Yes, that might mean that I am testing on Windows. For the record I regret it already.)

                1 Reply Last reply Reply Quote 1
                • tom
                  tom administrators last edited by

                  The parenthesis are a bad idea. You really want to do it like this:

                  if "%DLC%"=="" set DLC=D:\Progress\OpenEdge11.7
                  
                  1 Reply Last reply Reply Quote 1
                  • First post
                    Last post