Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


24560 / 76732 ←次へ | 前へ→

【57520】Re:PDFファイルの閉じ方
回答  neptune  - 08/8/28(木) 22:03 -

引用なし
パスワード
   ▼たつ さん:
こんにちは

横から失礼

Windows APIを使えば出来ますが、保障はしません。
(WindowsプログラムはWM_CLOSEで終了の為の色んな処理を行う作りが多いと
思うのでたぶん問題はないとは思いますが、念の為)
一応Acrobatreaderでは動きました。

ちなみに他にも方法はありますが、いずれにせよAPIでWindowハンドルを
取得してWM_CLOSEを送るのが比較的安全と思います。

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" _
            (ByVal lpClassName As String, _
            ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" _
            (ByVal hWnd As Long, ByVal MSG As Long, _
            ByVal wParam As Long, ByVal lParam As Long) As Long
Private Const WM_CLOSE = &H10

Sub t()
Dim hWnd As Long
Const sClassName As String = "AdobeAcrobat"     ''アクロバット(多分持ってないので検証できない)
Const sReaderClassName As String = "AcrobatSDIWindow"  'アクロバットリーダー8
  hWnd = FindWindow(sReaderClassName, vbNullString)
  SendMessage hWnd, WM_CLOSE, 0&, 0&
End Sub

もし何がなんだか全く判らないのなら使用をお勧めしません。

2 hits

【57502】PDFファイルの閉じ方 たつ 08/8/28(木) 11:05 質問
【57503】Re:PDFファイルの閉じ方 ハチ 08/8/28(木) 11:19 発言
【57515】Re:PDFファイルの閉じ方 たつ 08/8/28(木) 16:20 質問
【57516】Re:PDFファイルの閉じ方 ハチ 08/8/28(木) 17:16 発言
【57528】Re:PDFファイルの閉じ方 たつ 08/8/29(金) 8:41 お礼
【57520】Re:PDFファイルの閉じ方 neptune 08/8/28(木) 22:03 回答

24560 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free