?
Solved

Replacement for TShellListView

Posted on 2005-04-07
8
Medium Priority
?
759 Views
Last Modified: 2012-05-05
I'm using TShellListView in D6. I need a bug-free replacement. It creates too many errors.
Anyone know of / got a free lookalike or equivalent? If I have to pay for it thats okay, as long as its cheap.

No, I'm not going to "just use TListView" It has to look GOOD and be able to NAVIGATE through a folder tree.

thax :--)
0
Comment
Question by:HorridMan
  • 4
  • 3
8 Comments
 
LVL 2

Expert Comment

by:insomniac92
ID: 13732947
We use Virtual Treeview for everything. - very powerful once you get the hang of it. And it's Free...
http://www.soft-gems.net/ 
0
 

Author Comment

by:HorridMan
ID: 13733646
Insomniac - Thanks for that, it looks VERY interesting. But I really want something that interfaces with the file system. I don't suppose you know of something with the ability to populate its own list with directory contents?
0
 
LVL 2

Accepted Solution

by:
odissey1 earned 200 total points
ID: 13742800
Hi HorridMan,

Only Two Delphi solutions exist:

1.
TVirtualExplorerTreeView (AKA VirtualShellTools) by Jim Kueneman and Robert Lee
Yahoo Forum: VirualShellTools, Jim Kueneman, http://groups.yahoo.com/group/VirtualExplorerTree

VirtualExplorerListViewEx, Robert Lee,
http://club.telepolis.com/silverpointdev/velvex/index.htm

for latest version of the VST look at http://www.delphi-gems.org and http://www.soft-gems.net

2.
Same author different solution - J. Kueneman,
http://mustangpeak.net/

look for CoolControl examples

Regards,
odissey1
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 2

Expert Comment

by:odissey1
ID: 13742808
TShellListView is dead (not just in D6, in D7 -same story). Borland abandoned its development (see discussion at code central ) a long ago as was unable to overcome bugs pile. That's the reason it is in 'Samples' folder - do not use it other than for code study.

odissey1
PS. There are some examples of WinExplorer - like clones in
http://groups.yahoo.com/group/VirtualExplorerTree (see Files)    
0
 

Author Comment

by:HorridMan
ID: 13746371
Thanks Odissey1, VirtualExplorerListViewEx does the job. Just one question, I need to stop it from executing the native application for files that are double clicked, so that my app can deal with them exclusively. How do you do that?
0
 
LVL 2

Expert Comment

by:odissey1
ID: 13758284
Hi HorridMan,


Use functions:

ShellExecute
(ShellExecuteW)
(ShellExecuteEx)

I have no TVirtualExplorerListView installed so can't draft you an example  right now. If you have a problem using ShellExecute
fast way would be to post Q in Yahoo group (see below: normally you get unswer in 24 h). Let me know if any problems and I'll reinstall VELV so can be more helpful.

Regards,
odissey1

PS: see discussion at yahoo groups:
 
http://groups.yahoo.com/group/VirtualExplorerTree/message/5327

From: Gerald Köder <mail@gkoeder.de>
Date: Sun Jun 27, 2004  4:18 pm
Subject: AW: [VirtualExplorerTree] VirtualExplorerListviewEx1DblClick double click       gkoeder

Hi

you can use 'onShellExecute'. There you can check the file extension (check the
focused node and extract the fileextension from the associated namespace) and
decide, if your program or the shell should handle the task (set var 'Allow').

regards
Gerald

procedure txyz.ShellListShellExecute(Sender: TCustomVirtualExplorerTree; Namespace: TNamespace;
var WorkingDir, CmdLineArgument: WideString; var Allow: Boolean);


________________________________

Von: voelker10 [mailto:jvoelker@ameritech.net]
Gesendet: So 27.06.2004 17:02
An: VirtualExplorerTree@yahoogroups.com
Betreff: [VirtualExplorerTree] VirtualExplorerListviewEx1DblClick double click



Is there any way to prevent LvEx from opening a document with the
default application when a file is double clicked in LvEx. For
certain file extensions, I want the Delphi application to handle the
task on a double click rather than the default application.

I would like to be able to check the file extension on
theVirtualExplorerListviewEx1DblClick event and if the file type is
one of a certain type, I want the Delphi application to handle the
task and if not, have the Windows default application handle the task.

Any advice is greatly appreaciated. Thanks.

Jim Voelker

0
 

Author Comment

by:HorridMan
ID: 13760777
Thanks for the reply, Odissey, but you took me the opposite way. VirtualExplorerListViewEx, astonishingly, behaves like Windows Explorer and executes the default application when the user double clicks a file.

This bad. Not good. Me no like.

But I sorted it out by adding a boolean global variable to the method "DoubleClick" in one of the units to stop applications from launching. Problem solved.

Thanks. :-)
0
 
LVL 2

Expert Comment

by:odissey1
ID: 13796378
Hi HorridMan,

this should look like this (from my head)

procedure  Form1.VirtualExplorerTreeEx1ShellListShellExecute(Sender: TCustomVirtualExplorerTree; Namespace: TNamespace;
var WorkingDir, CmdLineArgument: WideString; var Allow: Boolean);
var FName: String;
begin
  //* = means I don't remember exact syntaxis
  if Namespace.Extension = 'xyz' then begin//*
    Allow := False; //do not execute file
    FName:=Namespace.NameNormal    //get name of the clicked file
   //do whatever you want with this File..
  end;

end;

Don't be shy to post your question on Yahoo Groop (addres above). You will normally get unsver within 24h there. Have a nice weekend.

Regards,
odissey1
0

Featured Post

Upgrade your Question Security!

Add Premium security features to your question to ensure its privacy or anonymity. Learn more about your ability to control Question Security today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Despite its rising prevalence in the business world, "the cloud" is still misunderstood. Some companies still believe common misconceptions about lack of security in cloud solutions and many misuses of cloud storage options still occur every day. …
Screencast - Getting to Know the Pipeline
Suggested Courses

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question