Opening a file by mouse click

Posted on 2002-06-21
Last Modified: 2010-05-02
       How do I open any file by double clicking mouse button.
Question by:ami12
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Author Comment

ID: 7098116

Expert Comment

ID: 7098158
double clicking  Where ????

any how   U can Use Shell Command for exe

or ShellExecute API for any    dOCUMENT TO TRY TO RUN IT


Accepted Solution

priya_pbk earned 20 total points
ID: 7098384
By double clicking it, of course!! :0)

I think you might be wanting to do it programatically. is it?

Depends which file you wish to open by clicking what(ie command button or by filelistbox etc)

Try this:
Put a textbox, commondialog control and 2 command buttons on the form and copy this in the code window

'decalare this first

Private Declare Function ShellExecute Lib _
             "shell32.dll" Alias "ShellExecuteA" _
             (ByVal hwnd As Long, _
              ByVal lpOperation As String, _
              ByVal lpFile As String, _
              ByVal lpParameters As String, _
              ByVal lpDirectory As String, _
              ByVal nShowCmd As Long) As Long
Private Const SW_SHOW = 1

Private Sub Command1_Click()
Text1.Text = CommonDialog1.FileName
End Sub

Private Sub Command2_Click()
Dim hBrowse As Long
hBrowse = ShellExecute(0&, "open", Text1.Text, "", "", SW_SHOW)
End Sub

Hope this helps!


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!


Expert Comment

ID: 7098968
Do you mean how does the opeating system know which file to open when you double click on a file of a given type?  Do you want to know how to make windows run your program against a file of a given type when it's double clicked?

If so you would have to set the association of the extention with the file type in the registry

this happens fairly simply.

in HKEY_CLASSES_ROOT there is a high level node that is your file extention "i.e. .'.log'" the .log node tells the system where to look for more detailed info (a throwback to win 3.1 I guess)

so it looks like this

-[].log (Default)    REG_SZ    txtfile

in HKEY_CLASSES_ROOT there is another high level node that matches the Data paramater for the .log node (txtfile).  It contains the information on what to do with the file. It looks like this:

-[]txtfile (Default)    REG_SZ    file description
  -[]DefaultIcon (Default)   REG_EXPAND_SZ    icon location
  -[]Shell (Default)    REG_SZ    (value not set)
    -[]open (Default)    REG_SZ    (value not set)
      []command (Default)    REG_EXPAND_SZ    path to app  %1

NOTE: the %1 is the file the application will attempt to open, being passed as a command line parameter

NOTE2: I just reviewed my own registry, and this is how it LOOKS!!  if I'm wrong someone please correct me

I hope that helps.  Hopefully if you have some sort of installer for your application it should be able to set up this type of stuff for you, otherwise you might be looking at a little bit of work to get this running

Expert Comment

ID: 7098979
crud, html makes my little chart thing look funny.. it looked a lot better when I typed it in the text box (should have used pre tags I guess)

Umm.. the []'s are supposed to denote a folder, or a node level, hopefully the indenting is obvious?
LVL 16

Expert Comment

ID: 7099106
If you are talking about open a file with your app:

Expert Comment

ID: 7099118
that basically describes what I outlined above?  except of course you give him the code... very nice.. I'll have to check that out sometime..
LVL 16

Expert Comment

ID: 7099278
No. It shows how to create an association for a given file (maybe  with a "custom" extension used only by your program). That's my idea. Sorry if i "override" your comment with something from it.

Featured Post

Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

Question has a verified solution.

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

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
Suggested Courses
Course of the Month5 days, 12 hours left to enroll

626 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