[WFX] VirtualPanel: Temporary panel for TC
Moderators: Hacker, petermad, Stefan2, white
Hi,
Let's see if I can overcome this issue I'm facing. I have my TC installation under dropbox, so when I add a new plugin or change some configuration param I don't need to do it in all 3 hosts I use.
So far it is working perfectly, all plugins I am using work without issue (in the end it's quite easy just using some envvars to hide where some basic folders are in each host).
When using VP, it only works partially:
1. in host A I installed VP and configured it, by adding couple of virtual folders, defining a >Refresh to populate them etc.
2. I shutdown A, go to host B, let dropbox sync and start TC. I can go to \\Virtual Folder, but it is empty, I can copy a file to it, create dirs etc, but my >Refresh script is not there, and neither are my folders.
I guess (this is a wild guess cause I know nothing about how it works internally) VP is storing the info about folders and scripts in some place that is outside TC dir and so not beign sync-ed by dropbox?
I am not using %TEMP%\VirtualPanel.lst yet (as I still have not investigated it), but I understand it is not needed cause in host A I got my folders and scripts when I restart TC so they must be stored somewhere...
any ideas how this could be achieved?
thanks!
Let's see if I can overcome this issue I'm facing. I have my TC installation under dropbox, so when I add a new plugin or change some configuration param I don't need to do it in all 3 hosts I use.
So far it is working perfectly, all plugins I am using work without issue (in the end it's quite easy just using some envvars to hide where some basic folders are in each host).
When using VP, it only works partially:
1. in host A I installed VP and configured it, by adding couple of virtual folders, defining a >Refresh to populate them etc.
2. I shutdown A, go to host B, let dropbox sync and start TC. I can go to \\Virtual Folder, but it is empty, I can copy a file to it, create dirs etc, but my >Refresh script is not there, and neither are my folders.
I guess (this is a wild guess cause I know nothing about how it works internally) VP is storing the info about folders and scripts in some place that is outside TC dir and so not beign sync-ed by dropbox?
I am not using %TEMP%\VirtualPanel.lst yet (as I still have not investigated it), but I understand it is not needed cause in host A I got my folders and scripts when I restart TC so they must be stored somewhere...
any ideas how this could be achieved?
thanks!
How you're adding URLs to VP? TC doesn't allow to drag anything external to VP, just internal objects - but internal objects can't be URLs.PhBa wrote:Is-it possible to add/put URLs in the virtual panel![]()
Of course, we can link any URL to the virtual panel.
Then
- a page with the html extension can be opened by double clicking on the link
- other pages can not be opened from the virtual panel
In all cases, the links appear with the 'Removed folder icon'
Best wishes
BTW you may add URLs as scripts - just specify a command to open URL in your browser (link to browser's EXE should be within VP). You may also use any icon then and create buttonbar button to add URL to VP.
URL links in VP
As I said to you, I would like to use VP as a workspace: so, I need to bring together various folders / files. Some of these files are only accessible by HTTP...
To be compliant with TC and VP:
- first, i create a Windows link (an .url)
- then, i copy this one into VP
As result:
- the VP link is displayed with its icon (minor problem: this is not the icon defined into the Windows link; TC has also the same limitation)
- I can open the VP link into my Explorer by double clicking
As you see, this process requires the creation of a link on my computer...
I would like to be able to directly create the VP link... with a specific command ('<addurl' for example), because the current '<add' command does not work properly with URLs (display problem ; and, execution problem due to a TC limitation)
What do you think about this idea
To be compliant with TC and VP:
- first, i create a Windows link (an .url)
- then, i copy this one into VP
As result:
- the VP link is displayed with its icon (minor problem: this is not the icon defined into the Windows link; TC has also the same limitation)
- I can open the VP link into my Explorer by double clicking

As you see, this process requires the creation of a link on my computer...
I would like to be able to directly create the VP link... with a specific command ('<addurl' for example), because the current '<add' command does not work properly with URLs (display problem ; and, execution problem due to a TC limitation)
What do you think about this idea

<add command allows to add only existing files.
If you want to have additional command, you may write a simple script for it, e.g. you may use such \>addurl script:
You may specify any icon instead of sample shell32.dll,123. Don't forget to add IE executable as \MyFavoriteBrowser.exe before using links.
The only problem is that links with % characters won't be opened correctly because of expanding environment variables.
If you want to have additional command, you may write a simple script for it, e.g. you may use such \>addurl script:
Code: Select all
<ifdef %2 { <add >%1 { <exec \MyFavoriteBrowser.exe %2 <<shell32.dll,123 } <exit } <ifok {Please specify two parameters: link name and URL. Link will be created with < prefix.} {}
The only problem is that links with % characters won't be opened correctly because of expanding environment variables.
URL links in VP
I'm not used to play with your '<exec' command...
Not intuitive... but, thank you I will use it
Not intuitive... but, thank you I will use it

URL links in VP
I removed the '<exit' command; and, I surrounded the second parameter of '<ifdef' with {}... this removes an alert window !MVV wrote:Great if it is enough for you
Code: Select all
<ifdef %2 {<add >%1 {<exec \MyFavoriteBrowser.exe %2 <<shell32.dll,242}} {<ifok {Please specify two parameters: link name and URL. Link will be created with > prefix.} {}}

Why you cannot expand environment variables ?
Thanks again for this great addons...
I've used <exit to remove second block - such script is easier to read IMHO. Anyway, I would prefer this case:(firstly exit condition and action, and then rest script part)
Code: Select all
<ifdef %2 {} {<ifok {Please specify two parameters: link name and URL. Link will be created with > prefix.} {} <exit}
<add >%1 {<exec \MyFavoriteBrowser.exe %2<<shell32.dll,242}
VP can expand envvars and does it - that's why it breaks URLs with mulitple % chars - system function that expands envvars treats characters between nearest % chars as envvar name and expands it even if is undefined - so it returns e.g. forum/361-bcbeb4 for forum/361-%d0%bc%d0%be%d0%b4%d0% (of course if envvar d0 is undefined).Why you cannot expand environment variables ?
Environment variables
Hello MVV,
It seems to me that the environment variables are expanded:
- at creation time for the links,
- at run time for the script.
Am I right ? Why these 2 behaviours ?
For example, I noticed that we can add link as a script : <add foo {% TEMP%\...}... this link is not expanded in the lst file
but, it is broken and unusable in VP 
Because, I use TC and VP on an USB device, I need to use 'dynamic' links on several resources. Of course, I can write a script to rebuild these links...
but, I think that it is not a friendly trick !
What do you suggest?
It seems to me that the environment variables are expanded:
- at creation time for the links,
- at run time for the script.
Am I right ? Why these 2 behaviours ?
For example, I noticed that we can add link as a script : <add foo {% TEMP%\...}... this link is not expanded in the lst file


Because, I use TC and VP on an USB device, I need to use 'dynamic' links on several resources. Of course, I can write a script to rebuild these links...
but, I think that it is not a friendly trick !
What do you suggest?
VP expands envvars in commands to be executed (incl. script commands), but if you enclose script parameter with braces {}, it will be left as is (however it will be expanded anyway during execution) - that's why script file is created w/o expanded envvars. Unfortunately we can't forbid envvar expansion during execution.
Environment variables
So, no friendly solution !MVV wrote:VP expands envvars in commands to be executed (incl. script commands), but if you enclose script parameter with braces {}, it will be left as is (however it will be expanded anyway during execution) - that's why script file is created w/o expanded envvars. Unfortunately we can't forbid envvar expansion during execution.
If my linked resources depend on an envar (variable whose value can change from one computer to another), i need to rebuild the VP links (with a script) with each change of computer

Another problem is that % char must be doubled in script file because it is parameter char (e.g. %1 will be replaced with first script parameter in %1f%df like in usual batch file).
BTW you may use external tool that will double percent chars in command line and then call VPBatch to add script. The only problem is to get such simple tool:) and to create script that will execute it with right command line.
BTW you may use external tool that will double percent chars in command line and then call VPBatch to add script. The only problem is to get such simple tool:) and to create script that will execute it with right command line.
PhBa, you may use this VPAddUrl.exe for your task:
Decode and unpack archive with TC. Then put VPAddUrl.exe to VP folder and then add to VP e.g. as \addurl (virtual name of application link may be w/o extension and this will work - VP will execute it by real path anyway). Then rename or copy \>addurl to >addlink (VPAddUrl will start script with such name and pass right URL to it). You may call \addurl directly with link name and URL or you may create additional script that will call \addurl.
E.g. to add URL with name >mylink that points to http://bla.bla.bla/%fe%45%33 you may execute command \addurl mylink http://bla.bla.bla/%fe%45%33.
Don't forget that you may use VPAddUrl.exe even from buttonbar button - it will pass command to VP anyway (VP must be loaded of course). If you don't specify full path to link name, it will be created in last opened VP folder.
Code: Select all
MIME-Version: 1.0
Content-Type: application/octet-stream; name="VPAddUrl.7z"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="VPAddUrl.7z"
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
IAgAAAAA
E.g. to add URL with name >mylink that points to http://bla.bla.bla/%fe%45%33 you may execute command \addurl mylink http://bla.bla.bla/%fe%45%33.
Don't forget that you may use VPAddUrl.exe even from buttonbar button - it will pass command to VP anyway (VP must be loaded of course). If you don't specify full path to link name, it will be created in last opened VP folder.
VPAddUrl.exe
Thanks a lot
Your tool decodes properly the URLs containing escape characters...
One small remark: I set the auto-refresh when the files are created... but, I need to manually refresh the list for the new links to appear. I noticed this same behavior with the addition of links from the toolbar !
I will suppose: due to the using of an external executable.

One small remark: I set the auto-refresh when the files are created... but, I need to manually refresh the list for the new links to appear. I noticed this same behavior with the addition of links from the toolbar !
I will suppose: due to the using of an external executable.