ACC: How to Start Doc with Windows API ShellExecute() FunctionID: Q121157
|
Advanced: Requires expert coding, interoperability, and multiuser skills.
You can use the Windows application programming interface (API)
ShellExecute() function to start the application associated with a given
document extension without knowing the name of the associated application.
For example, you can start the Microsoft Paintbrush program by passing the
file name ARCADE.BMP to the ShellExecute() function.
The following example demonstrates how to start an application or load a
document into its associated application. The Windows API ShellExecute()
function is different from the Access Basic Shell() function in that you
can pass the ShellExecute() function the name of a document and it will
start the associated application and then pass the filename to the
application. You can also specify the working directory for the
application.
NOTE: In the following sample code, an underscore (_) at the end of a line
is used as a line-continuation character. Remove the underscore from the
end of the line when re-creating this code in Access Basic.
Option Explicit
Declare Function ShellExecute Lib "SHELL" (ByVal hwnd%, ByVal _
lpszOp$, ByVal lpszFile$, ByVal lpszParams$, ByVal lpszDir$, _
ByVal fsShowCmd%) As Integer
Declare Function GetDesktopWindow Lib "USER" () As Integer
Function StartDoc (DocName As String)
StartDoc = ShellExecute(GetDesktopWindow(), "Open", DocName, _
"", "C:\", 1)
End Function
Error Value Meaning
----------------------------------------------------------------
2 The file was not found.
3 The path was not found.
8 There was insufficient memory to start the
application.
10 The Windows version was incorrect.
11 The executable file was invalid. Either it was not
a Windows application or there was an error in the
.EXE image.
For an example of how to use the Windows application programming interface
(API) ShellExecute() function to start the application associated with a
given document extension without knowing the name of the associated
application in Microsoft Access for Windows 95 version 7.0, please see the
following article in the Microsoft Knowledge Base:
Q148632 ACC: Start Files or Hyperlinks with Windows API
ShellExecute()
Microsoft Windows SDK "Programmer's Reference, Volume 2: Functions,"
pages 901-904
Keywords : kbprg
Version : 1.0 1.1 2.0
Platform : WINDOWS
Issue type : kbhowto
Last Reviewed: April 6, 1999