add link

Posted on 2003-11-10
Last Modified: 2010-05-03
hallo there
i want add link in visual basic such as a pdf file and when click it open the select file with its sutable software
can any one help me
Question by:abedalhade

Accepted Solution

Shaztronics earned 20 total points
ID: 9713754
just do:

in module:

Option Explicit

Public 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

Public Function OpenFile(hWnd As Long, strOperation As String, ByVal File As String)
    Dim lRet As Long
    'these constants are all the values you
    '     can have for
    'the 'nShowCmd' part of the function
    Const SW_SHOWNORMAL = 1
    Const SW_HIDE As Long = 0
    Const SW_MAXIMIZE As Long = 3
    Const SW_MINIMIZE As Long = 6
    Const SW_RESTORE As Long = 9
    Const SW_SHOW As Long = 5
    Const SW_SHOWDEFAULT As Long = 10
    Const SW_SHOWMAXIMIZED As Long = 3
    Const SW_SHOWMINIMIZED As Long = 2
    Const SW_SHOWMINNOACTIVE As Long = 7
    Const SW_SHOWNA As Long = 8
    Const SW_SHOWNOACTIVATE As Long = 4
    'the 'lpOperation' can have 3 different
    '     values:
    'and "Explore" all in quotes
    'if you use vbNullString, the default is
    '     "Open"
    'the 'lpFile' is of course the name of t
    '     he file, either
    'and executable or a file with an associ
    '     ation
    'the 'lpParameters' part of the function
    '     can hold any command line
    'switches that the called program may ha
    '     ve. You can't use this when
    'opening regular files. You usually don'
    '     t need this.
    'lpDirectory is the default directory of
    '     the application, here I just used
    'the application's directory.
    lRet = ShellExecute(hWnd, strOperation, File, vbNullString, App.Path, SW_SHOWNORMAL)
End Function

Expert Comment

ID: 9713798
Use the ShellExecute API

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 Sub Command1_Click()
    ShellExecute Me.hwnd, "open", "filename.pdf", vbNullString, "C:\", SW_SHOWNORMAL
End Sub

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Introduction While answering a recent question ( in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
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…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

896 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now