[WFX] VirtualPanel: Temporary panel for TC

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: Hacker, petermad, Stefan2, white

Post Reply
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Actually my tool doesn't decode URLs, it just doubles percent characters so browser gets and decodes right addresses. :)
I will suppose: due to the using of an external executable.
No, the reason is that VP contents changes not by TC command but internally. Auto-refresh doesn't work for file system plugins, and FS plugins are fully passive - they can only accept TC commands but can't tell to TC that e.g. panel needs to be updated.

You may see another refresh bugs with file system plugins, even w/o using external tools. E.g. open same VP folder in both panels and delete a file e.g. in left panel - TC won't refresh right panel.

I can pass refresh command cm_RereadSource to TC but it won't help if another panel is active. And TC have no command cm_RereadTarget yet. And TC will exit archive on reread. So currently VP doesn't send this command at all because of side effects.
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

I am back again using this after some time I was out. It is working perfectly so far, two questions:

1. AutoSaveInterval is specified in seconds? i.e
AutoSaveInterval=3600

2. Imagine i have VPin the left panel, with some link to real folders (am I not sure if I am using the link/virtual/real nomenclature right as MVV intends, cause its still a bit diff to understand).
I want to open in the original folder in the right panel, but outside VP, that is I want to see it as TC would see that folder. If I use Ctrl-Right arrow I open the folder but still inside VP. Is there a way to do that? specially with a keyboar shortcut.

thanks!
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

1. AutoSaveInterval is specified in seconds? i.e
Yes.
I not sure if I am using the link/virtual/real nomenclature right as MVV intends, cause its still a bit diff to understand
Don't forget that links to real folders have another icon. Also you can open properties for such folders in contrast to just virtual folders that have no properties.
I want to open in the original folder in the right panel, but outside VP, that is I want to see it as TC would see that folder. If I use Ctrl-Right arrow I open the folder but still inside VP.
Well, TC doesn't allow to use Ctrl+Right because it doesn't expect folder links (I think we should report this as a bug). Unfortunately %v and %V also doesn't work for folders so it seems that currently there is no easy way to do this. But if you have associated folders with TC in your Windows, you may use Ctrl+Enter and Enter to open focused folder.
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:
1. AutoSaveInterval is specified in seconds? i.e
Yes.
It does not seem to work for me, I set it:
AutoSaveInterval=300

start TC and in 5 min DefFileList is not updated (I added a virtual folder). Several of the times I was testing TC crashed with a MSVC++ runtime error window (while I had focus in another program) around the time it should have saved VP state file.

Most of the times I exit TC, it hangs, I have to kill the process, and I can see this in eventviewer:
Faulting application TOTALCMD.EXE, version 7.5.5.1, time stamp 0x2a425e19, faulting module VirtualPanel.wfx_unloaded, version 0.0.0.0, time stamp 0x4cf6a0d2, exception code 0xc0000005, fault offset 0x6d38c914, process id 0x9c8, application start time 0x01cbbe033e732540.
Several times the state file was written only partially, as it has only the firt virtual folder i created, not everything I put there.
Well, TC doesn't allow to use Ctrl+Right because it doesn't expect folder links (I think we should report this as a bug). Unfortunately %v and %V also doesn't work for folders so it seems that currently there is no easy way to do this. But if you have associated folders with TC in your Windows, you may use Ctrl+Enter and Enter to open focused folder.
I see what you mean, now I get Windows explorer doing that, how do I associate TC with folders (I guess i should know that already :))

I'll follow that post you opened, even if I cannot understand the details.
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

You need to write corresponding command line for TC in default value here (don't forget to backup original state of this registry key):

Code: Select all

HKEY_CLASSES_ROOT\Folder\shell\open\command
Then Windows will execute this command for entering folders. E.g. you may use following command:

Code: Select all

C:\TOTALCMD\TOTALCMD.exe /O /S /L="%1"
This will open folder in last active TC instance (or in new one) in active panel. You may change /L to /R to open it in inactive. You may add parameter /T to open it in new tab. Don't forget to specify full path to TC w/o environment variables (Windows doesn't know about TC's COMMANDER_PATH variable).
Several of the times I was testing TC crashed with a MSVC++ runtime error window (while I had focus in another program) around the time it should have saved VP state file.
It is strange, I have no bugs here.

What you're doing when TC crashes? Is VP panel is opened in that moment? Which VP version do you have? If you get this bug with VP 1.0.0.904, we need to investigate it.

What size your state file has? If you can reproduce crash with it (and can't reproduce with another state file), maybe you can pack it and send to me (e.g. via some sharing service)?
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:You need to write corresponding command line for TC in default value here (don't forget to backup original state of this registry key):

Code: Select all

HKEY_CLASSES_ROOT\Folder\shell\open\command
Then Windows will execute this command for entering folders. E.g. you may use following command:

Code: Select all

C:\TOTALCMD\TOTALCMD.exe /O /S /L="%1"
This will open folder in last active TC instance (or in new one) in active panel.
Ok I understand what that would do, not perfect but preferable to not having anything :).
I tried it but I still get Explorer opened...strange...
BTW, I saw the original value I had is:
%SystemRoot%\Explorer.exe /separate,/idlist,%I,%L
so isn't %SystemRoot% a regular envvar?
Several of the times I was testing TC crashed with a MSVC++ runtime error window (while I had focus in another program) around the time it should have saved VP state file.
It is strange, I have no bugs here.

What you're doing when TC crashes? Is VP panel is opened in that moment? Which VP version do you have? If you get this bug with VP 1.0.0.904, we need to investigate it.

What size your state file has? If you can reproduce crash with it (and can't reproduce with another state file), maybe you can pack it and send to me (e.g. via some sharing service)?
I have version 2010-12-01 1.0.0.904.
There are two places (one i suspect, the other i'm sure):
- when AutoSaveInterval>0 when it is saving the file (I think it's at this point) sometimes I get the msvc runtime error, TC crashes.
- when I exit TC it sometimes hangs.
If i disable AutoSaveInterval (value =0) then I am not getting any crash or hang I think. State file was small, 5kb. I cannot consistently reproduce, otherwise I would be happy to provide any data you need to debug. Anyway as I dont need to save state so often this is not too big problem.
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:You need to write corresponding command line for TC in default value here (don't forget to backup original state of this registry key):

Code: Select all

HKEY_CLASSES_ROOT\Folder\shell\open\command
Then Windows will execute this command for entering folders. E.g. you may use following command:

Code: Select all

C:\TOTALCMD\TOTALCMD.exe /O /S /L="%1"
This will open folder in last active TC instance (or in new one) in active panel.
Ok I understand what that would do, not perfect but preferable to not having anything :).
I tried it but I still get Explorer opened...strange...
BTW, I saw the original value I had is:
%SystemRoot%\Explorer.exe /separate,/idlist,%I,%L
so isn't %SystemRoot% a regular envvar?
Several of the times I was testing TC crashed with a MSVC++ runtime error window (while I had focus in another program) around the time it should have saved VP state file.
It is strange, I have no bugs here.

What you're doing when TC crashes? Is VP panel is opened in that moment? Which VP version do you have? If you get this bug with VP 1.0.0.904, we need to investigate it.

What size your state file has? If you can reproduce crash with it (and can't reproduce with another state file), maybe you can pack it and send to me (e.g. via some sharing service)?
I have version 2010-12-01 1.0.0.904.
There are two places (one i suspect, the other i'm sure):
- when AutoSaveInterval>0 when it is saving the file (I think it's at this point) sometimes I get the msvc runtime error, TC crashes.
- when I exit TC it sometimes hangs.
If i disable AutoSaveInterval (value =0) then I am not getting any crash or hang I think. State file was small, 5kb. I cannot consistently reproduce, otherwise I would be happy to provide any data you need to debug. Anyway as I dont need to save state so often this is not too big problem.
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

BTW, I saw the original value I had is:
%SystemRoot%\Explorer.exe /separate,/idlist,%I,%L
so isn't %SystemRoot% a regular envvar?
%SystemRoot% is global variable - such vars are common for all apps (you may change such var in Win+Pause -> Advanced tab). %COMMANDER_PATH% is local one - it is only visible for child processes of TC (usually Explorer is not TC child :)).
I tried it but I still get Explorer opened...strange...
Hm-m, it is strange. BTW, maybe you should delete subkey ddeexec...
I cannot consistently reproduce, otherwise I would be happy to provide any data you need to debug.
Please try to discover conditions. I'm using AutoSaveInterval=300 for months and no problems here.
kerem
Junior Member
Junior Member
Posts: 26
Joined: 2011-01-27, 18:47 UTC

Post by *kerem »

Hi

When i try to use the .bar supplied in the first post I am getting "file not found" in all the functions.

Any ideas?

thanks
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

When i try to use the .bar supplied in the first post I am getting "file not found" in all the functions.

Any ideas?
Just check and fix paths for VPBatch.exe and AskParam.exe used in that bar file - I can't guess paths for all TC users so I provide bar file with some default paths (my paths BTW). :wink:

You should edit bar file using any text editor in order to find and replace all wrong paths with your ones.
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:%SystemRoot% is global variable - such vars are common for all apps (you may change such var in Win+Pause -> Advanced tab). %COMMANDER_PATH% is local one - it is only visible for child processes of TC (usually Explorer is not TC child :)).
ok ok, I wanted to use a normal envvar, I dont use %COMMANDER_PATH%
]Hm-m, it is strange. BTW, maybe you should delete subkey ddeexec...
indeed! now it works properly, thanks!
Please try to discover conditions. I'm using AutoSaveInterval=300 for months and no problems here.
When trying to see if the file got modified I was testing with AutoSaveInterval=30. If I see something else I'll try to pinpoint.

Another subject, I read the title can be rename to something else than 'Virtual Panel', how does one do that?
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Another subject, I read the title can be rename to something else than 'Virtual Panel', how does one do that?
Which title? If you mean root namespace (\\\Virtual Panel\), you can rename it in FS plugins configuration dialog in TC. Title of message boxes and VP configuration dialog can't be renamed.
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:
Another subject, I read the title can be rename to something else than 'Virtual Panel', how does one do that?
Which title? If you mean root namespace (\\\Virtual Panel\), you can rename it in FS plugins configuration dialog in TC. Title of message boxes and VP configuration dialog can't be renamed.
yes I meant root namespace, thanks. Now I have VP configured to my liking...I'll see if I find more advanced usage of this great plugin. :P

BTW, as a side effect of changing registry to open folders with TC, now Win-Pause instead of openeing the control panel, gets TC to open \\System\. Is there a way to get the control panel with these hotkeys?
User avatar
MVV
Power Member
Power Member
Posts: 8711
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Interesting side effect, I didn't know about it. Maybe you should put corresponding LNK to quick launch bar or to start menu instead? (I mean LNK to item System of control panel)
jmwap
Member
Member
Posts: 121
Joined: 2008-03-23, 12:40 UTC

Post by *jmwap »

MVV wrote:Interesting side effect, I didn't know about it. Maybe you should put corresponding LNK to quick launch bar or to start menu instead? (I mean LNK to item System of control panel)
I think I am going to revert the reg change...I cannot open the control panel in any way (even from init menu...), windows always tries to open it in TC :shock:

I can open the individual app from the menu, but I prefer the usual panel etc.
Post Reply