関連付け起動によるファイルの印刷
                                                         玄関へお回り下さい。
関連付け起動によるファイルの印刷       (134)
     Option Explicit   'SampleNo=134 WindowsXP VB6.0(SP5) 2002.05.22

'拡張子に関連付けられたプログラムを実行する(P699)
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_HIDE = 0
'ウィンドウをアクティブ化し表示(元の位置とサイズで復元)
Private Const SW_RESTORE = 9
'ウィンドウをアクティブ化し最大表示する
Private Const SW_SHOWMAXIMIZED = 3


Private Sub Command1_Click()
'lpOperation に"Print"を指定することで関連付け起動で印刷
  Dim lngResult As Long
  Dim MyFile  As String
  MyFile = Trim$(Text1.Text) 'ファイルのPATHを取得
    lngResult = ShellExecute(Me.hwnd, "Print", MyFile, _
            vbNullString, vbNullString, SW_HIDE)
  If lngResult < 32 Then
    MsgBox "エラーが発生しました 正しいフォルダー名を指定して下さい"
  End If
End Sub

関連付け起動と同じで "Open" の部分を "Print" を指定しただけです。
これで、直接アプリを立ち上げてファイルを読み込んで印刷していたのが、関連付け起動
と同じくファイルを指定するだけで関連付けされたアプリの印刷機能で印刷ができます。
xls ファイルや htm ファイル等も、勿論印刷できます。






2002/08/05