Rocky Smolin at Beach Access Software
rockysmolin at bchacc.com
Wed Mar 14 19:27:25 CDT 2007
Thanks David. I switched over to this instead of the FollowHyperlink
approach. Worked perfectly once I figured out about getting the API
function declared.
The FollowHyperlink approach seems cleaner but there must be some drawback
to it.
Anyway, your code works fine with a second from Andy. So I'll use it.
Thanks,
Rocky
-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of David Emerson
Sent: Wednesday, March 14, 2007 2:02 PM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Open PDF
Rocky,
I use this function (Not sure where I came across it). StrFile is the full
path to the file to open. It used Windows file association to know what
program to open the file in:
Function RunApp(strFile As String, bytSize) As Boolean
Dim lngRet As Long
Dim varTaskID As Variant
Dim strRet As String
' Enclose FilePath within double quotes so as to take care of embedded
spaces if any.
strFile = Chr(34) & strFile & Chr(34)
' bytSize = 1 for Normal Window, 3 for Maximized Window
lngRet = ShellExecute(hWndAccessApp, vbNullString, strFile,
vbNullString, vbNullString, bytSize)
If lngRet > 32 Then 'Success
strRet = vbNullString
lngRet = -1
RunApp = True
Else
RunApp = False
Select Case lngRet
Case 0 'InadequateMemory
MsgBox "Error: Out of Memory/Resources!"
Case 2 'FileNotFound
MsgBox "Error: " & strFile & " not found."
Case 3 'PathNotFound
MsgBox "Error: Path not found for file " & strFile & "."
Case 11 'BadFormat
MsgBox "Error: Bad File Format for file " & strFile & "."
Case 5
MsgBox "Error: Unauthorized due to Security restrictions!"
Case Else
MsgBox "Error: Unexpected error (Number " & lngRet &
") for file " & strFile & "."
End Select
End If
End Function
Regards
David Emerson
Dalyn Software Ltd
999 Moonshine Rd, RD 1
Judgeford, Porirua
New Zealand 5381
Phone 0064 4 235-6782
Fax 0064 4 235-6783
At 15/03/2007, you wrote:
>Dear List:
>
>What is the best way to open a PDF file through VBA. I have the full
>path and file name of the PDF file, but I can't count on the version or
>location of Acrobat on the target machines.
>
>MTIA,
>
>Rocky
>--
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 268.18.11/721 - Release Date: 3/13/2007
4:51 PM