Hi Tom,

thanks for that. So it seems that something is blocking COM communications between WSJT-X and Omni-Rig that is resolved by running WSJT-X with elevated rights. The Windows security model, in general, blocks IPC between processes running at different security levels. If that is the issue then perhaps somehow Omni-Rig can only be started using elevated rights. Is it possible that the OmniRig.exe file has a security restriction applied? On my system if I check the effective rights for my non-administrator user to the omnirig.exe file I see this:
which includes read and execute. Is it the same on your system?

I am not sure why you are asking about how WSJT-X accesses serial ports, when using Omni-Rig it doesn't access serial ports. To access COM services we use a Qt library Active that allows us to access COM services without the low level details of handling COM in C. We also use a Qt tool called dumpcpp which generates Active Qt COM wrappers by querying the COM server via its GUID to enumerate its COM API.

https://doc.qt.io/qt-5/activeqt-index.html

73
Bill
G4WJS.

On 18/07/2021 18:55, Tom via wsjt-devel wrote:

Hi

Ok. I did this.  When you run WSJT without being admin, no log is made at all.  You get Failed to start Omni Rig COM server in  WSJT

If you run it as admin, then a log appears.

Here are the first few lines…

13:45:51.670 Omni-Rig started: Version 1.19

13:45:51.675 Loading commands from "ZS-1.ini"

13:45:51.691 Loading commands from "TS-930.ini"

13:45:51.707 Loading commands from "TS-870.ini"

If you run Log4OM for example NOT as admin, a log is created as above.

Since this happens with an older version of WSJT and the latest versions (production) most likely a library somewhere has been changed.  Perhaps by Windows update.

I remember a couple of years ago, that I had a sound device stuck in WSJT even though the device wasn’t installed. .  We worked on it a lot to no resolution.  A subsequent Windows update fixed it.

What libraries are you using for serial port access? Or the com server?

73 Tom

*From:*Bill Somerville via wsjt-devel <wsjt-devel@lists.sourceforge.net>
*Sent:* Sunday, July 18, 2021 1:32 PM
*To:* wsjt-devel@lists.sourceforge.net
*Cc:* Bill Somerville <g4...@classdesign.com>
*Subject:* Re: [wsjt-devel] WSJT-X and Omni-Rig: Failed to start Omni Rig COM server

Tom,

I did have a minor typo in the first path I wrote below, other than that it most certainly is where the Omni-Rig configuration file is found:

C:\Users\bill\build>dir "%AppData%\Afreet\Products\OmniRig\"
  Volume in drive C is Windows8_OS
  Volume Serial Number is 56CD-82B3
  Directory of C:\Users\bill\AppData\Roaming\Afreet\Products\OmniRig
20/04/2017  15:16    <DIR>          .
20/04/2017  15:16    <DIR>          ..
18/07/2021  08:38               762 OmniRig.ini
14/08/2016  00:16               282 OmniRig.ini~
18/07/2021  08:36            18,617 OmniRig.log
                3 File(s)         19,661 bytes
                2 Dir(s)  62,254,145,536 bytes free

Note Products, not Produxts as I mis-typed.

At this point I think that running anything here with elevated rights causing different behaviour is coincidental.

I also think the "Failed to start Omni-Rig COM server" is somewhat bogus too as you have proved that if you stat the server manually WSJT-X still fails to hook up with it. I am hoping the Omni-Rig debug log has some entry that tells me what is actually happening.

73
Bill
G4WJS.

On 18/07/2021 17:19, Tom via wsjt-devel wrote:

    Hi

    There is no such path.  I am using omni-rig 1.19 just downloaded
    from the web at dxatlas.

    The use of administrator mode only works for the 64 bit WSJT. The
    32 bit fails with both user and administrator mode.  Always failed
    to start the omnirig com server.

    Tom

    *From:*Bill Somerville via wsjt-devel
    <wsjt-devel@lists.sourceforge.net>
    <mailto:wsjt-devel@lists.sourceforge.net>
    *Sent:* Sunday, July 18, 2021 3:39 AM
    *To:* wsjt-devel@lists.sourceforge.net
    <mailto:wsjt-devel@lists.sourceforge.net>
    *Cc:* Bill Somerville <g4...@classdesign.com>
    <mailto:g4...@classdesign.com>
    *Subject:* Re: [wsjt-devel] WSJT-X and Omni-Rig: Failed to start
    Omni Rig COM server

    Hi Tom,

    thanks for the clarification. You didn't confirm which version of
    Omni-Rig you are using.

    It would be interesting to see the Omni-Rig debug log for a test
    where WSJT-X claims it is unable to start the Omni-Rig COM server.
    To enable Omni-Rig debug logging put the following into the main
    Omni-Rig settings file
    "%AppData%\Afreet\Produxts\OmniRig\OmniRig.ini" at the top:

    [Debug]

    Log=1

    The log file is called OmniRig.log and appears in the same
    "%AppData%\Afreet\Products\OmniRig\" directory.

    73
    Bill
    G4WJS.

    On 17/07/2021 00:42, tom via wsjt-devel wrote:

        Hi

        No, I don't think I said this right.

        If you open omnirig while you monitor the serial port, the
        serial port opens, then there's a little activity and then the
        port closed. Omnirig remains open.

        Starting wsjt with omnirig open or closed produces the same
        result. Failed to start com server unless you run it as admin.

        Tom

        Sent from my Galaxy

        -------- Original message --------

        From: Bill Somerville via wsjt-devel
        <wsjt-devel@lists.sourceforge.net>
        <mailto:wsjt-devel@lists.sourceforge.net>

        Date: 2021-07-16 5:56 p.m. (GMT-05:00)

        To: wsjt-devel@lists.sourceforge.net
        <mailto:wsjt-devel@lists.sourceforge.net>

        Cc: Bill Somerville <g4...@classdesign.com>
        <mailto:g4...@classdesign.com>

        Subject: Re: [wsjt-devel] WSJT-X and Omni-Rig: Failed to start
        Omni Rig COM server

        Hi Tom,

        that's not how Omni-Rig behaves for me, if I start it manually
        the setup dialog stays open until it is cancelled or closed
        with the OK button. Starting WSJT-X to communicate with it
        doesn't change that. What version of Omni-Rig are you using?

        73
        Bill
        G4WJS.

        On 16/07/2021 22:49, Tom via wsjt-devel wrote:

            Hi

            Omni-rig connects just fine to the radio.  When you open
            it there is some initial comport activity then it closes. 
            All this is normal.

            It is completely reproducible on my system.  There is no
            issue with any other application that uses Omni-rig.

            On the groups.io list, there are people that have reported
            this in the past.

            73 Tom

            *From:*Bill Somerville via wsjt-devel
            <wsjt-devel@lists.sourceforge.net>
            <mailto:wsjt-devel@lists.sourceforge.net>
            *Sent:* Friday, July 16, 2021 4:03 PM
            *To:* wsjt-devel@lists.sourceforge.net
            <mailto:wsjt-devel@lists.sourceforge.net>
            *Cc:* Bill Somerville <g4...@classdesign.com>
            <mailto:g4...@classdesign.com>
            *Subject:* Re: [wsjt-devel] WSJT-X and Omni-Rig: Failed to
            start Omni Rig COM server

            Hi Tom,

            OK, I've not see that behaviour. Are you able to reproduce
            it? If yes, then does starting Omni-Rig manually before
            starting WSJT-X work correctly?

            73
            Bill
            G4WJS.

            On 16/07/2021 20:59, tom via wsjt-devel wrote:

                Hi

                Actually no. When you start wsjt it immediately gives
                an error saying failed to start omnirig com server. If
                you monitor the serial port traffic, nothing happens
                at all. No serial communications at all.

                If you start wsjt as administrator it works without an
                issue. This doesn't happen with any other software
                that uses omnirig. It's strange because this always
                worked in the past.

                73 Tom va2fsq

                Sent from my Galaxy

                -------- Original message --------

                From: Bill Somerville via wsjt-devel
                <wsjt-devel@lists.sourceforge.net>
                <mailto:wsjt-devel@lists.sourceforge.net>

                Date: 2021-07-16 3:36 p.m. (GMT-05:00)

                To: wsjt-devel@lists.sourceforge.net
                <mailto:wsjt-devel@lists.sourceforge.net>

                Cc: Bill Somerville <g4...@classdesign.com>
                <mailto:g4...@classdesign.com>

                Subject: Re: [wsjt-devel] WSJT-X and Omni-Rig: Failed
                to start Omni Rig COM server

                On 16/07/2021 20:10, Tom via wsjt-devel wrote:
                > I am the author of Win4IcomSuite and have started
                getting reports of WSJT
                > failing to start the Omni-rig COM server.  This does
                not happen on all
                > computers. In addition, it starts happening when no
                changes have been made
                > to Omni-rig and WSJT.  Installing the latest
                versions does not correct the
                > issue.
                > To reproduce:
                > Reboot your computer and make sure there are no
                other applications using
                > omni-rig.
                > Use Omni-rig definition for your Icom radio;. Start
                WSJT.  You receive the
                > above error.
                > Run WSJT as Administrator and it works.
                >
                > All other applications using Omni-rig work without
                putting them in
                > administrator mode.  No other related software is
                running.  This is with a
                > direct connection to the radio.
                >
                > Details, version 2.4.0 (happens on previous version
                as well).
                > Windows 10, version 19041.1083
                > 73 Tom va2fsq

                Tom,

                I am looking into this issue, you don't need to keep
                repeating your query.

                So far I see one problem with startup when there is a
                fault condition
                like the rig not being accessible, or if WSJT-X is
                closed down before it
                has completed all the retries it attempts before
                reporting an error
                (that takes up to 10 seconds). Is that consistent with
                what you are
                reporting? If so, then if WSJT-X is left for 20
                seconds or so to do its
                own thing does an error get reported?

                73
                Bill
                G4WJS.


_______________________________________________
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to