[Beta21]Existing FSplugin installation not properly detected
Moderators: Hacker, petermad, Stefan2, white
[Beta21]Existing FSplugin installation not properly detected
I'm running Tc 8.0 beta 21 x32 on W7 Enterprise x64. I installed a new version of VirtualPanel (2.0.5.1205) on top of an existing older version. It was created as a new FS plugin with name Virtual Pane (missing 'l') and the existing version was not detected and thus plainly overwritten. This resulted in two FS entries that point to the same plugin folder.
I tested with some more existing FS plugins and none was properly detected when reinstalling. Normally a dialog is presented that the plugin already exists, overwrite Y/N, but this is not happening anymore. Restart of Windows and TC did not make a difference.
Tested this also in TC 7.57 Final which detected existing plugins without problems.
Seems like the FS plugin detection is broken, at least on my system...
Regards, EricB
I tested with some more existing FS plugins and none was properly detected when reinstalling. Normally a dialog is presented that the plugin already exists, overwrite Y/N, but this is not happening anymore. Restart of Windows and TC did not make a difference.
Tested this also in TC 7.57 Final which detected existing plugins without problems.
Seems like the FS plugin detection is broken, at least on my system...
Regards, EricB
I can't reproduce the problem...
PCIDetect wfx was already installed, reinstalled an older version, then a newer version, and in the [FileSystemPlugins] section it appears only once (the same applies to the plugin list inside Total Commander / Plugins). Did the same with VirtualPanel: the name in the list is interestingly "VirtualPane" instead of VirtualPanel (but i guess its something because of the plugin author's choice), but theres only one "VirtualPane" entry in the list.
TC8.0B21 (x32) [no redirections in wincmd.ini], Win7SP1 (x32)
PCIDetect wfx was already installed, reinstalled an older version, then a newer version, and in the [FileSystemPlugins] section it appears only once (the same applies to the plugin list inside Total Commander / Plugins). Did the same with VirtualPanel: the name in the list is interestingly "VirtualPane" instead of VirtualPanel (but i guess its something because of the plugin author's choice), but theres only one "VirtualPane" entry in the list.
TC8.0B21 (x32) [no redirections in wincmd.ini], Win7SP1 (x32)
Bluestar,
Thanks for taking the time to test. It seems that a new name of the FS plugin is only done when it contains a space. I've tried with NokiaFS plugin, which does that too. If the FS plugin has a single name, like PCIDetect, only one entry will be made. The point is that normally the existing plugin installation would be detected and an overwrite dialog would be shown: 'A plugin with this name is already installed in the following directory [name of directory]. Do you want to overwrite it?'. This is now not the case and the overwrite is done without notification. Therefore my conclusion that the FS plugin detection is broken.
Regards, EricB
Thanks for taking the time to test. It seems that a new name of the FS plugin is only done when it contains a space. I've tried with NokiaFS plugin, which does that too. If the FS plugin has a single name, like PCIDetect, only one entry will be made. The point is that normally the existing plugin installation would be detected and an overwrite dialog would be shown: 'A plugin with this name is already installed in the following directory [name of directory]. Do you want to overwrite it?'. This is now not the case and the overwrite is done without notification. Therefore my conclusion that the FS plugin detection is broken.
Regards, EricB
Sorry, EricB, it is not a TC bug, it is a Virtual Panel bug (just fixed), FsGetDefRootName returned "Virtual Pane" instead of "Virtual Panel" (wrong string length used) when TC tried to ask default plugin name.
Last edited by MVV on 2012-02-27, 14:17 UTC, edited 1 time in total.
MVV: I think its partially a TC bug too.
Now i can reproduce the problem with the new version of VirtualPanel (v2.0.5.1206), which has been published some minutes ago!
I've entered the zip file, and Total Commander didn't asked to overwrite the installed version of the plugin or not, it automatically did it. Now i can see "Virtual Panel" and "Virtual Pane" in the list, both pointing to the same directory & file.
Screenshot: http://img535.imageshack.us/img535/4277/sshot1ea.png
Now i can reproduce the problem with the new version of VirtualPanel (v2.0.5.1206), which has been published some minutes ago!
I've entered the zip file, and Total Commander didn't asked to overwrite the installed version of the plugin or not, it automatically did it. Now i can see "Virtual Panel" and "Virtual Pane" in the list, both pointing to the same directory & file.
Screenshot: http://img535.imageshack.us/img535/4277/sshot1ea.png
2MVV,
Thanks for responding. Seems that the VP issue is resolved then. Still got the problem with other existing plugins that are not detected when installing.
2Bluestar,
Do you also miss the overwrite dialog for plugins that keep the same name (so no new entry is made in [FilesystemsPlugins] in wincmd.ini)?
Regards, EricB
Thanks for responding. Seems that the VP issue is resolved then. Still got the problem with other existing plugins that are not detected when installing.
2Bluestar,
Do you also miss the overwrite dialog for plugins that keep the same name (so no new entry is made in [FilesystemsPlugins] in wincmd.ini)?
Regards, EricB
Bluestar, please try to remove wrong line starting with Virtual Pane and reinstall plugin once again...
I have two VP versions installed in TC and I get overwrite question when I enter any VP distributive (e.g. 1.0.0.820, 1.0.0.904, 2.0.3.1104, 2.0.5.1205, 2.0.5.1206):
TC suggests to overwrite first found plugin with same file name (it may be checked by changing line order).
However I can confirm that TCx64 doesn't detect same plugin name and suggests to install new instance. Probably it searches VirtualPanel.wfx64 in INI instead of just VirtualPanel.wfx. So, steps to reproduce:
1. Start 32-bit TC and install plugin.
2. Run 64-bit TC and try to install same plugin. TC won't detect existing installation.
I have two VP versions installed in TC and I get overwrite question when I enter any VP distributive (e.g. 1.0.0.820, 1.0.0.904, 2.0.3.1104, 2.0.5.1205, 2.0.5.1206):
Code: Select all
Virtual Panel (debug)=...\Projects\TC_VirtualPanel\Debug\VirtualPanel.wfx
Virtual Panel=D:\TOTALCMD\Plugins\FileSystem\VirtualPanel\VirtualPanel.wfx
However I can confirm that TCx64 doesn't detect same plugin name and suggests to install new instance. Probably it searches VirtualPanel.wfx64 in INI instead of just VirtualPanel.wfx. So, steps to reproduce:
1. Start 32-bit TC and install plugin.
2. Run 64-bit TC and try to install same plugin. TC won't detect existing installation.
Last edited by MVV on 2012-02-27, 14:47 UTC, edited 1 time in total.
MVV,
I removed the Virtual Pane line and did a new VP install. The FS Name is indeed now correct, but I see the same behaviour now as with other plugins: no overwrite dialog and direct overwrite of existing files. Could you test some other FS plugin on your system? It is very well possible that my system is doing the odd stuff, therefore I ask to confirm.
TIA, EricB
I removed the Virtual Pane line and did a new VP install. The FS Name is indeed now correct, but I see the same behaviour now as with other plugins: no overwrite dialog and direct overwrite of existing files. Could you test some other FS plugin on your system? It is very well possible that my system is doing the odd stuff, therefore I ask to confirm.
TIA, EricB
2MVV:
After removing the plugin with "Virtual Pane" line i tried to reinstall the newest version of VirtualPanel. TC correctly asked if i want to overwrite the existing plugin or not - after installing the plugin i have only one entry, titled "Virtual Panel".
2EricB:
For plugins with always the same internal name Total Commander always shows me the overwrite confirmation dialog window. It just failed in one case, which i've described above: the old version of the plugin was called "Virtual Pane" while the new is "Virtual Panel" - this way Total Commander thought its not installed, so automatically installed it instead of asking what action should be taken.
I think Total Commander should check not just the (internal) name of installed the plugins, but the plugin's path too - in case a plugin (with any name) exists in the same path the actual plugin installation should be copied, it should show the Overwrite confirmation dialog too.
After removing the plugin with "Virtual Pane" line i tried to reinstall the newest version of VirtualPanel. TC correctly asked if i want to overwrite the existing plugin or not - after installing the plugin i have only one entry, titled "Virtual Panel".
2EricB:
For plugins with always the same internal name Total Commander always shows me the overwrite confirmation dialog window. It just failed in one case, which i've described above: the old version of the plugin was called "Virtual Pane" while the new is "Virtual Panel" - this way Total Commander thought its not installed, so automatically installed it instead of asking what action should be taken.
I think Total Commander should check not just the (internal) name of installed the plugins, but the plugin's path too - in case a plugin (with any name) exists in the same path the actual plugin installation should be copied, it should show the Overwrite confirmation dialog too.
Agree on that one, also path should be checked.Bluestar wrote:I think Total Commander should check not just the installed (internal) name of the plugins, but the plugins path too - if a plugin (with _any_ name) exists in the path the actual plugin installation should be copied, it should show the Overwrite confirmation dialog too.
Bluestar, do you have also TC8 x64 installed? It seems that the overwrite issue I have is maybe because there is also a FileSystemPlugin64 entry in my wincmd.ini; see also MVV's remark in his last post.
Regards, EricB
Maybe TC asks for overwriting if plugin is loaded at that time? If I try to enter plugin archive with test INI, TC asks to overwrite only if I entered plugin before.
So case 1:
1. Start TC with /i=%temp%\testini1.ini and install plugin (e.g. to %temp%\plugins)
2. Restart TC with same /i=%temp%\testini1.ini.
3. Load plugin (enter its \\\Folder).
4. Try to reinstall it. TC will ask to overwrite.
Case 2:
Same but w/o step 3.
Tested with 32-bit TC.
So case 1:
1. Start TC with /i=%temp%\testini1.ini and install plugin (e.g. to %temp%\plugins)
2. Restart TC with same /i=%temp%\testini1.ini.
3. Load plugin (enter its \\\Folder).
4. Try to reinstall it. TC will ask to overwrite.
Case 2:
Same but w/o step 3.
Tested with 32-bit TC.
But what if I want to have multiple plugins installed into same folder? And, it seems that TC checks plugin's filename and not any other name.Bluestar wrote:I think Total Commander should check not just the (internal) name of installed the plugins, but the plugin's path too - in case a plugin (with any name) exists in the same path the actual plugin installation should be copied, it should show the Overwrite confirmation dialog too.
Last edited by MVV on 2012-02-27, 15:04 UTC, edited 4 times in total.
EricB, unfortunately i cannot check it, because i have only 32-bit Windows at hand...
MVV: I did the described steps, but it doesn't matter if i skip Step 3 or not - TC always shows me the overwrite confirmation dialog in case the plugin already exists in the current path (x86).
MVV: I did the described steps, but it doesn't matter if i skip Step 3 or not - TC always shows me the overwrite confirmation dialog in case the plugin already exists in the current path (x86).
You're right, i've explained it the wrong way: TC should overwrite the plugin (as it does now), and delete the existing entry (with the same path & filename) from wincmd.ini (or the according file, in case redirections are turned on) then write the new entry to wincmd.ini with the actual name of the currently installed plugin. You could install multiple plugins to the same folder this way.MVV wrote:And, it seems that TC checks plugin's filename and not any other name.
Last edited by Bluestar on 2012-02-27, 15:14 UTC, edited 3 times in total.
When I enter plugin archive for the second time, no installation is offered. Therefore I close and restart TC. This implies no plugins loaded. I can confirm your theory: if I open and close the plugin and then install it from archive, the overwrite dialog is displayed! If I use a cm_UnloadPlugins before opening the archive, the overwrite dialog is not displayed. This definitely narrows things down. Good thinking! Since Bluestar does not have the problem on his x32 system, the possibility that the [FileSystemPlugins64] is the origin of the problem is quite likely.MVV wrote:Maybe TC asks for overwriting if plugin is loaded at that time? If I try to enter plugin archive with test INI, TC asks to overwrite only if I entered plugin before.
2BlueStar: thanks for your efforts so far.
Regards, EricB
EricB, as I wrote above (corrected post), I tested it with TCx32, so both TCx32 and TCx64 act in same way. But stop, my working TC copy (both 32/64-bit) always ask for overwriting, even if plugin is not loaded!
And it is not necessary to restart TC, you may simply enter another archive and then again one with plugin.
And it is not necessary to restart TC, you may simply enter another archive and then again one with plugin.
Do you have both TC in same folder, sharing wincmd.ini?MVV wrote:EricB, as I wrote above (corrected post), I tested it with TCx32, so both TCx32 and TCx64 act in same way. But stop, my working TC copy (both 32/64-bit) always ask for overwriting, even if plugin is not loaded!
To make sure I do not see any configuration artefacts, I started with clean ini, installed VP, closed, started again with same clean ini and re-entered VP archive: now I get an overwrite dialog.
The problem must be in my TC install: it is portable (UseIniInProgramDir=7), resides in my Dropbox (d:\document\Dropbox\tc8) and I made a junction d:\tc8. Moreover, many sections in wincmd.ini are redirected. This setup might be the culprit then. Further testing needed for pinpointing.
That does not work for me in 8.0 (also not with /i=clean.ini), but checked in 7.57 and there it does the trick.MVV wrote: And it is not necessary to restart TC, you may simply enter another archive and then again one with plugin.
Edit: 7.57 has the same portable setup as described above, just uses another folder.
Regards, EricB