C$SYSTEM

I use this statement for to do a Vutil32.exe -info within a cobolprogram. On my own Windows7 PC the value in STATUS-SYSO is zero. By a customer  the value is 95. Why? What are the values you can get back form the system after running.  

          COMPUTE   H05-PARAM = CSYS-HIDDEN CSYS-SHELL.
           CALL      "C$SYSTEM"               USING  PARAM-A-SYSO
                                                     H05-PARAM
                                             GIVING  STATUS-SYSO.

           INITIALIZE          PARAM-SYSO.
           STRING    '"'
                     H31-MAP-UTILITY        DELIMITED BY LOW-VALUES
                     '\bin\Vutil32.exe" '   DELIMITED BY SIZE
                     "-info -k "            DELIMITED BY SIZE
                     H21-PATH               DELIMITED BY LOW-VALUES
                     "."
                     H31-FILE-SUFFIX        DELIMITED BY SPACE
                     H31-OUTPUT-INFO        DELIMITED BY LOW-VALUES
                                               INTO  PARAM-A-SYSO
           END-STRING.

  • i only know this codes from vutil32.exe

    0

    file passed all checks

    1

    checks not fully performed because the file was in use

    2

    non-zero user count found

    3

    file is corrupt

    99

    user interaction was required, and the "-q" switch was set

    255

    vutil fatal error or incorrect command line

  • vutil itself can only return the values given by neidingd above.

    It could be that C$SYSTEM has an error that is causing the giving value to be wrong. We have seen that sometimes Microsoft changes the way some of the functions work, causing C$SYSTEM to have strange results. If the customer is running a different version of Windows than you, that may be the issue. If you can reproduce the issue, I suggest submitting a bug report.