QXW file association on windows ...

Generic issues not specifically related to a QLC+ area.
Post here only if you can't really find the reason of an issue
Post Reply
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

So far I've been using QLC+ on Linux where clicking on a qxw file opens it in edit mode.

Recently I installed QLC+ 4.12.3 on several windows machines (1 W10, 2 W11).
I associated the qxw file extention with the qlcplus.exe program.

When clicking on a qxw file (applies to both a freshly created one and a copied over one), qlcplus program opens (meaning the association of the extention to the program works), but the qxw file is not read (must use the open workspace dialog to open the file).

Other associations (like xlsx to excel) do work as expected (program starts and file is opened) on these machines.

Anyone else noticed this behaviour ?

By the way, as a workaround I created cmd files (one for editing the workspace, one for running the workspace in kiosk mode) so the -o command line option works ...
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

After reading some other posts on this forum, I learned that QLC+ windows installer is putting some stuff in the registry.
Searching the registry, I found multiple entries like ...\qlcplus(.exe)\shell\open\command with value ["C:\QLC+\qlcplus.exe" "%1"] ...
FYI the brackets are not part of the value, I just used them to make clear the double quotes and the space between them are part of the value.

As this occurs in multiple places and I'm not so familiar with messing around in the registry, I'm not gonna experiment, but maybe the windows installer should be modified to use ["C:\QLC+\qlcplus.exe -o" "%1"] as value wherever a shell\open\command is stored in the registry ???

Just my 2 cents ...
User avatar
GGGss
Posts: 2732
Joined: Mon Sep 12, 2016 7:15 pm
Location: Belgium
Real Name: Fredje Gallon

In my register, the

Code: Select all

Computer\HKEY_CLASSES_ROOT\QLightControllerPlus.Document\shell\open\
branch uses this key / value

Code: Select all

 command 	"C:\system\QLC+\qlcplus.exe" --open "%1"
So this is already implemented.
Change the value in regedit and you are good.
Other solution: right click on your project file and choose 'open with' and select the QLC+ program. This should solve the same problem.
All electric machines work on smoke... when the smoke escapes... they don't work anymore
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

Hi Fredje,

Thanks for your reply.
The registry key you mention (QLightControllerPlus.Document\shell\open\) is not found in the registry of the machines I've used (so far six different windows machines with the same characteristics : W10 / W11, never had QLC+ installed before), maybe this is from a different version ?

These are the steps that were taken on each of them:
  • Install QLC+ using default options
  • Run QLC+ program at least 1 time
  • Associate .qfw with qlcplus.exe (right click on workspace file, open with, select qlcplus.exe, always use this app)
=> when clicking on workspace, qlcplus starts, but workspace is not opened.

Here are the registry entries regarding shell\open\command and FileExts\.qxw from one of the machines (I've checked with one other machine and apart from 'HKEY_USERS' ID-string these are identical.

Code: Select all

Key: Computer\HKEY_CLASSES_ROOT\Applications\qlcplus.exe\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_CLASSES_ROOT\qxw_auto_file\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_CURRENT_USER\Software\Classes\Applications\qlcplus.exe\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_CURRENT_USER\Software\Classes\qxw_auto_file\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\OpenWithList
 - Name:  c
 - Value: qlcplus.exe

Key: Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\OpenWithList
 - Name:  MRUList
 - Value: cfdeab

Key: Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\UserChoice
 - Name:  ProgId
 - Value: Applications\qlcplus.exe

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001\Software\Classes\Applications\qlcplus.exe\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001\Software\Classes\qxw_auto_file\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\OpenWithList
 - Name:  c
 - Value: qlcplus.exe

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\OpenWithList
 - Name:  MRUList
 - Value: cfdeab

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.qxw\UserChoice
 - Name:  ProgId
 - Value: Applications\qlcplus.exe

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001_Classes\Applications\qlcplus.exe\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"

Key: Computer\HKEY_USERS\S-1-5-21-1684076089-245194242-3795753233-1001_Classes\qxw_auto_file\shell\open\command
 - Name:  (Standaard)
 - Value: "C:\QLC+\qlcplus.exe" "%1"
Given the number of machines and consistent behaviour, I think it is safe to conclude there is an issue with QLC+_4.12.6.exe windows installer ...
User avatar
mcallegari
Posts: 4482
Joined: Sun Apr 12, 2015 9:09 am
Location: Italy
Real Name: Massimo Callegari
Contact:

This is the line discussed
https://github.com/mcallegari/qlcplus/b ... 5.nsi#L107
Perhaps something has changed on NSIS (the tool used to create the Windows installer) cause the line above haven't been touched in years
I'll check when I have some time
janosvitok
Posts: 1274
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

These are some older topics on the same subject:

* viewtopic.php?t=9346
* viewtopic.php?t=13968

This is the code responsible for the association setup:

* https://github.com/mcallegari/qlcplus/b ... 5.nsi#L104

It has not changed in 10 years (since 2014).

@mcallegari:

Findings

* How to reproduce:
* install QLC+ normally, the associations are not created.
* run the installer as admin, the associations are created.
* Note: the qxf association is created, but broken.

Proposed fixes

* Installer should request admin rights:
https://github.com/mcallegari/qlcplus/b ... t5.nsi#L21 should say "admin" instead of "user", see https://nsis.sourceforge.io/Reference/R ... utionLevel
* Typo: https://github.com/mcallegari/qlcplus/b ... 5.nsi#L110 - L112 should read

Code: Select all

	WriteRegStr HKCR "QLightControllerPlusFixture.Document" "" "Q Light Controller Plus Fixture"
	WriteRegStr HKCR "QLightControllerPlusFixture.Document\DefaultIcon" "" "$INSTDIR\qlcplus-fixtureeditor.exe,0"
	WriteRegStr HKCR "QLightControllerPlusFixture.Document\shell\open\command" "" '"$INSTDIR\qlcplus-fixtureeditor.exe" --open "%1"'
QLightControllerPlusFixture instead of QLightControllerFixturePlus

Jano
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

Hi Massimo, Jano,

On one of the machines, I ran the 4.12.6 installer again, this time as administrator.
After installation finished, I clicked on a qxw file and windows asked me which program to open with, I chose qlcplus (always) and lo and behold, workspace files now open when clicking on them ...

Also the QLightControllerPlus.Document registry entry with --open is present now (allthough the shell\open\command keys I mentioned still don't have a --open before the "%1").

So I think the solution should focus on making the installer run as Admin ...
User avatar
GGGss
Posts: 2732
Joined: Mon Sep 12, 2016 7:15 pm
Location: Belgium
Real Name: Fredje Gallon

Freddy_H wrote: Thu Apr 13, 2023 11:54 am making the installer run as Admin ...
... my fault - I ALWAYS do setup / installers / .msi under Administrator-rights.

This explains a lot... and thank you for debugging. It will come of use in new forum threads.
All electric machines work on smoke... when the smoke escapes... they don't work anymore
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

After (re-)installing with Admin rights, seems like fixture editor still doen't open qxf files by clicking on them (even though QLightControllerPlusFixture.Document is present and open command has the --open)
janosvitok
Posts: 1274
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

Freddy_H wrote: Fri Apr 14, 2023 9:14 am After (re-)installing with Admin rights, seems like fixture editor still doen't open qxf files by clicking on them (even though QLightControllerPlusFixture.Document is present and open command has the --open)
That's what I wrote about in my post. Open regedit and change QLightControllerFixturePlus.Document to QLightControllerPlusFixture.Document (.qxf entry is correct - it says QLightControllerPlusFixture.Document, but the key that contains shell/command/open is wrong).

Jano
Freddy_H
Posts: 48
Joined: Mon Apr 13, 2015 11:40 am
Location: Belgium
Real Name: Freddy Hoogstoel

Ah yes, sorry for overlooking that.
Reg Key changed, laptop rebooted, now working OK : at first click on qxf file asked to confirm fixture editor program (always) and now qxf file is opened in editor when clicking on it.
Post Reply