いつもお世話になります
今、AutocadALtでの自動処理プログラムを作成しています
そこでプログラム起動時にAutocadLtの起動確認をしたいのですが、
今まではAcdaremoconというフリーソフト行っていましたが
Win64またWin32で行いたいと思い
Webから下記の記述を見つけました
しかし、クラス名のところでつまずいてしまいました
例題で"Notepad"なのですが、AutocadLtは”Acadlt"ではないみたいです
Option Explicit
Declare PtrSafe Function FindWindow Lib "user32" _
Alias "FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As LongPtr
Sub FindWindow_Sample()
Dim strClassName As String 'クラス名
Dim rc As LongPtr
Dim lngProcessID As Long 'Shell関数の戻り値
'クラス名を指定する
'strClassName = "Notepad"
strClassName = "Acadlt"
'ウィンドウハンドルを取得する
rc = FindWindow(strClassName, vbNullString)
'ウィンドウハンドルを取得できた時は起動しない
If rc <> 0& Then
MsgBox "すでに起動しています"
Exit Sub
End If
'起動する
lngProcessID = Shell("C:\Program Files\Autodesk\AutoCAD LT 2018\Acadlt.exe", vbNormalFocus)
End Sub
いつも申し訳ございません
クラス名について分かりましたら、教えてください
No.1ベストアンサー
- 回答日時:
こちらが解決しないと、もう一つの質問も解決しないのではありませんか?
それと、
>しかし、クラス名のところでつまずいてしまいました
>例題で"Notepad"なのですが、AutocadLtは”Acadlt"ではないみたいです
これは、初歩的ですが、VSなどをインストールしていれば、ツールがあるはずですが、単独では、古くからあるものですが、
https://www.vector.co.jp/soft/win95/prog/se29193 …
MiniSpy
を使います。
MIniSpy の画面
こんにちは
いつもありがとうございます
早速、ダウンロードして使ってみました
AutoCadLt画面にドラッグしたところ、いろいろな画面が
セレクト状態になり、最初は戸惑いましたが画面を小さくして
全体のフレームをセレクトしたところ上手くクラス名を拾えました
早速、みんなに教え感動してました
本当にありがとうございます
次の質問の答えもこれから見ます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows上のプログラム。「予め...
-
VBで実行中のEXEファイルの情報...
-
Process.Startで起動したアプリ...
-
VBSで起動したアプリが前面表示...
-
アウトルックが起動しているか...
-
exeファイルを実行するとすぐに...
-
PHPを通信させずにAndroidで動...
-
vba アプリの起動確認でAutocad...
-
C言語で他のプログラムの起動...
-
VBからの作業フォルダ指定
-
VBSから別のVBS起動するとき変...
-
二重起動禁止にする理由とは
-
Microsoft Edgeが起動しない
-
VisualBasic2008でWordを起動す...
-
VBによる複数バージョンのEXCEL...
-
WinSCPで画像のように puttyを...
-
EXCEL VBAから他アプリケーショ...
-
64bitで作ったEXEを32bitで起動...
-
VBAでOutlookを終了させたい Ex...
-
QueryPerformanceCounter の使...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アウトルックが起動しているか...
-
VBAでOutlookを終了させたい Ex...
-
VBで実行中のEXEファイルの情報...
-
Process.Startで起動したアプリ...
-
VBSから別のVBS起動するとき変...
-
Windows上のプログラム。「予め...
-
EXCEL VBAから他アプリケーショ...
-
VBSで起動したアプリが前面表示...
-
分かる人は簡単なのだろうが、v...
-
別アプリの起動、終了について
-
VBAでSeleniumからChromeを起動...
-
ACCESS VBAで別のACCESS(mdb)を...
-
VB6で呼び出し元の情報を取得す...
-
フォームの最前面が効かない
-
exeファイルを実行するとすぐに...
-
実行ファイルへのドラッグ&ド...
-
「FindWindow」、ウィンドウハ...
-
MSDOS(バッチファイル)でプロセ...
-
C# 他のアプリケーションを優先...
-
QueryPerformanceCounter の使...
おすすめ情報