Universal Viewer - Lister alternative

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

Moderators: white, Hacker, petermad, Stefan2

Post Reply
User avatar
Clo
Moderator
Moderator
Posts: 5731
Joined: 2003-12-02, 19:01 UTC
Location: Bordeaux, France
Contact:

Ho ! No script !

Post by *Clo »

2Alextp

:) Hi again !

- On principle, I never use any script, I prefer that all features be built-in with the programme I use… :lol:
- I'm script-allergic.

- So, if you embed it later… :roll:

:mrgreen: KR
Claude
Clo
#31505 Traducteur Français de TC French translator Aide en Français Tutoriels Français English Tutorials
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

2All
Can you please test Explorer context menu extension for Viewer?

http://atorg.net.ru/temp/ViewExt.rar

- Put ViewExt.dll and *.bat to folder with Viewer.exe
- Run Register.bat
(if regsvr32.exe will not run, then edit its path in Register.bat. It's in windows\system or system32)
- Test "Universal Viewer" context menu item in Explorer
- After test, run Unregister.bat.
User avatar
Clo
Moderator
Moderator
Posts: 5731
Joined: 2003-12-02, 19:01 UTC
Location: Bordeaux, France
Contact:

It's OK

Post by *Clo »

2Alextp

:) Hello Alexeï !

• All works fine ! No problem here.

:mrgreen: KR
Claude
Clo
#31505 Traducteur Français de TC French translator Aide en Français Tutoriels Français English Tutorials
tosbsas
Senior Member
Senior Member
Posts: 428
Joined: 2003-12-19, 13:12 UTC
Location: Lima, Perú
Contact:

Post by *tosbsas »

works perfect here too (:-))

Ruben
A New Generation transformed by the Power of God
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

Ok, I'll add this extension to next version.
User avatar
majkinetor !
Power Member
Power Member
Posts: 1580
Joined: 2006-01-18, 07:56 UTC
Contact:

Post by *majkinetor ! »

Extension works fine. I don't know why did you use dll to create static extension ? Dlls are needed only for dynamic ones, for instance if you wanted to add the text, Open in UniversalViewer with <plugin name>. U know that static shell exts can be added through Registry

Problems:
1. Don't save Viewer screen position in QV mode
2. mmedia plugin: try to open wmv files. Here, viewer is blocked.
Habemus majkam!
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

I don't know why did you use dll to create static extension ? Dlls are needed only for dynamic ones, for instance if you wanted to add the text
I think dll is needed for any Explorer shell extesion.
Have you example of static ext not a DLL?
Problems:
1. Ok
2. mmedia plugin is not stable. I already wrote about it in "Problems with WLX plugins"; if this's new issue, add it here:
http://www.ghisler.ch/wiki/index.php/ATViewer:_issues_with_WLX_plugins
User avatar
majkinetor !
Power Member
Power Member
Posts: 1580
Joined: 2006-01-18, 07:56 UTC
Contact:

Post by *majkinetor ! »

I think dll is needed for any Explorer shell extesion.
Have you example of static ext not a DLL?
Nope! Only for dynamic extensions. U can add it through the registry.

If you want to change the shell ext name or apperiance depending on selected file, then you need dll, since Explorer will pass file name details to the extension handler before it display the menu. Take Imagine for instance and its display of image thumbnail inside the menu.

Since you already created dll, you could check file type on shell call and add appropirate text or submenu if there are more then 1 plugin handling that file.


You can add static extension via
HKEY_CLASSES_ROOT.

Select *, add key named shell, add key named open, add key named command set default value to <viewer path> %1

See HKEY_CLASSES_ROOT\batfile to see an example.


PS: What about VisualDirSize plugin ?
Habemus majkam!
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

Since you already created dll, you could check file type on shell call and add appropirate text or submenu if there are more then 1 plugin handling that file.
I cannot do that: I don't know what plugins can open file (before calling them).
You can add static extension via
HKEY_CLASSES_ROOT.
Hm, it doesn't work here..
PS: What about VisualDirSize plugin ?
??
User avatar
majkinetor !
Power Member
Power Member
Posts: 1580
Joined: 2006-01-18, 07:56 UTC
Contact:

Post by *majkinetor ! »

Hm, it doesn't work here.. Quote:
Did you see default system primer for .bat files ?

This is regular procedure. There are plenty of Tweek sites about this on the net. The point is that if you want static ext you don't need to maintain 3 separate files for what is only one enough: .reg file
I cannot do that: I don't know what plugins can open file (before calling them).
You can. Since you must separately configure plugins in Viewer, that is, they are not dynamicaly updated from TC, you can cache data on config, and latter, on Explorer call ,search the cashe. You can also cachse binary headers for those plugs that don't have "detect string". When explorer calls you, you just open the file it sends you, see its header, and search your cache.

You can even open all plugins when explorer calls, but that will be slow, and we will have delay when displaying menu.
??
It doesn't work.
When I send to Viewer string containing folder name, DirSizeCalc should handle it, but instead viewer displays message in the middle.


PS: This is another possible usage of QV script. I made it to be possible to use it inside Dialogs :)

See this avi screenshot. I can't send you the script since this example was tweeaked to work with files in the root (d:\ in this example). I am still searching for the method to obtain current folder from the dialogs. When I do that, QV script will hande dialogs also (in that case, I will add Explorer also) and FavMenu will have add current dir option in dialogs... Unfortenately, I don't have fast implementation of this (only slow and problematic) and documentation about this hack is rarely found. I know only one application that can do this (AutoDialogs) and it is also slow. The folder is contained in combobox, witch is drawn so I can't get the text.

Screen: http://rapidshare.de/files/25437054/1.sqx.html
Habemus majkam!
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

Did you see default system primer for .bat files ?
No. :)
Since you must separately configure plugins in Viewer, that is, they are not dynamicaly updated from TC, you can cache data on config, and latter, on Explorer call ,search the cashe. You can also cachse binary headers for those plugs that don't have "detect string". When explorer calls you, you just open the file it sends you, see its header, and search your cache.
No, cache won't help.

Example: renamed JPG file. Imagine and SGViewer can open it. How can I know it before opening?
It doesn't work.
When I send to Viewer string containing folder name, DirSizeCalc should handle it, but instead viewer displays message in the middle.
Folder names are not opened by Viewer, sorry. Only files. Maybe later.
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

PS: This is another possible usage of QV script. I made it to be possible to use it inside Dialogs
Cool.
No joke, really.

Clo must see it, he won't be allergic. ;)
User avatar
Alextp
Power Member
Power Member
Posts: 2321
Joined: 2004-08-16, 22:35 UTC
Location: Russian Federation
Contact:

Post by *Alextp »

2majkinetor !
This is my reg file, that don't work.
No any items are displayed in Explorer menu, no program in "Open with...". Is it correct?

Code: Select all

REGEDIT4

[HKEY_CLASSES_ROOT\*\shell\open\command]
@="C:\\Utils\\Viewer.exe \"%1\""
User avatar
majkinetor !
Power Member
Power Member
Posts: 1580
Joined: 2006-01-18, 07:56 UTC
Contact:

Post by *majkinetor ! »

No, cache won't help.
Example: renamed JPG file. Imagine and SGViewer can open it. How can I know it before opening?
How often you open renamed jpg files, and how often normal jpeg files. Right!

So, if you like this idea, just implment it, I guarantee success.

PS: The bigest mistake of most programers is that they exagerate special situatitions. If somethink doesn't work in some special conditions it doesn't mean that you should abandon the idea: just make notes about it in documentation.
Habemus majkam!
User avatar
majkinetor !
Power Member
Power Member
Posts: 1580
Joined: 2006-01-18, 07:56 UTC
Contact:

Post by *majkinetor ! »

The reg file is wrong

Code: Select all

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\MAJKIs View\command]
@="c:\\1\\Viewer.exe \"%1\""
replace Majkis View with your own title. You should also set "" for long file names if Viewer is on long fn path.

I can create you installation batch script that will add correct registry path when executed within folder where Viewer.exe is.
Habemus majkam!
Post Reply