
いつもお世話になります
今、SendKeysを使ってAutoCad LTを操作するプログラムを開発中です
そこで困ったのがAutoCadが前面に開いていないと上手くいかないことです
自分で開くときは良いのですが、もともと開いていたAutoCadが最小になっていたりすると
上手くいきません
こういう時はどうしたら良いか分かりましたら教えてください
呼び出しは
AppActivate "Autodesk AutoCAD" '(AutoCAD のバージョンが2014以降はこちら)
SendKeys Chr(27) '...ESC Code
SendKeys "filedia 0" & Chr(13) '...ダイアログを出ないようにする
ちなみに、クラス名は
strClassName = "AfxMDIFrame140u" '...AutocadLT
以上、よろしくお願いいたします
No.1ベストアンサー
- 回答日時:
こんにちは
きちんと試してはいないので、確実ではありませんけれど・・
WinAPIを利用して、以下の手順でできませんか?
1)FindWindowでウィンドウのハンドルを取得
(クラス名がわかっているとのことですので、直接取得できると思います)
2)ShowWindowでSW_SHOWNORMAL等で表示
(最小化されている場合は、これがないと表示状態になりません)
3)SetForegroundWindowで最前面に表示
※ 最小化されていなければ、2)は省いてもOKと思います。
各APIの簡単な説明は以下に。
(検索すれば、いろいろ情報は見つかるはずですので、お調べください)
https://excel.syogyoumujou.com/memorandum/get_hw …
https://qiita.com/ymd65536-ms/items/21f5b40efca9 …
https://dobon.net/vb/dotnet/process/appactivate. …
※ 若干旧い解説ページなどがあるかも知れませんけれど、64ビット環境の場合は、APIの関数宣言や変数をPtrSafeで宣言する必要がありますので、ご注意ください。
https://learn.microsoft.com/ja-jp/office/vba/lan …
こんにちは
いつもありがとうございます
Excel64Bit版になっていろいろなことに直面しています
答えをいただき本当にありがとうございます
早速試してみます
まだまだ質問が出そうなので、またよろしくお願いいたします
まずはお礼まで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba UserFormを前面に出す方法を教えてください 1 2023/08/17 11:08
- Excel(エクセル) vba レジストリの値を読み込教えてください教えてください 1 2023/07/14 14:09
- CAD・DTP Auto CAD LT → Auto CAD 1 2022/04/20 12:29
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- CAD・DTP メインはAutocadからJwwに変換、尚且つ事前修正が少ないもの 1 2022/10/30 13:37
- Visual Basic(VBA) Vba 互換モードでのAppActiveについて教えてください 2 2022/06/27 18:47
- CAD・DTP autocadについて質問です。 以前Macを使っていたのですが、Windowsに図面を移したいと思 3 2023/05/18 22:40
- CAD・DTP AutoCADやJWCADの基礎とその後のサポートしてもらえるならいくらくらい出しても良いですか? 1 2022/03/28 16:05
- Visual Basic(VBA) VBAでPDFのアクティブページ番号取得 1 2023/05/25 12:41
- CAD・DTP AutoCAD の dwgデータを、dxf.JWWに変換するフリーの無料のソフトを教えてください。 1 2022/06/11 06:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FriendとPublicの違い。。。
-
VBA チェックボックスをオーバ...
-
エディットコントロールのイベ...
-
イベントにAddHandlerされてい...
-
VB.NETでクラスライブラリプロ...
-
エディットコントロールでEnter...
-
DataGridViewのセルに斜線を引...
-
ウィンドウの背景に画像を配置する
-
ダイアログクラスのコントロー...
-
継承したポインタ
-
C++勉強中なんですが
-
個々の関数について継承してい...
-
【ASP.NET】 独自で作成したク...
-
WindowsAPIのリストビューの...
-
VB6.0の関数をC++で使いたい
-
(UWSC) 「#32770」の意味わかり...
-
MFCアプリのコマンドラインでパ...
-
MFCのドラッグ&ドロップについて
-
C#で通常のbuttonコントロール...
-
C++/CLIからC++の呼び出しで例外
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA チェックボックスをオーバ...
-
FriendとPublicの違い。。。
-
既定のコンストラクタがない?
-
イベントにAddHandlerされてい...
-
(UWSC) 「#32770」の意味わかり...
-
ボタンのオーナードローについて
-
MFCアプリのコマンドラインでパ...
-
ダイアログ表示時にチェックボ...
-
【ASP.NET】 独自で作成したク...
-
エディットコントロールでEnter...
-
MFCのドラッグ&ドロップについて
-
オーバーライド関数の呼び出し...
-
DataGridViewのセルに斜線を引...
-
MFCのCListCtrlでスクロールを検出
-
C++ protectedにアクセス不可
-
ダイアログクラスのコントロー...
-
クラスのアドレスを引数として...
-
エディットコントロールのイベ...
-
個々の関数について継承してい...
-
WindowsAPIのリストビューの...
おすすめ情報