VisualC++6.0を用いて、ダイアログの2つあるプログラムを
作ったのですが、
2つのダイアログを例えばAさん用、Bさん用として使い分けようと思ったときに
メニューでダイアログをそれぞれ指定して、実行しようと思ったのですが、
Aさん用を親ダイアログにしてしまうと、Bさんは起動時ごとにメニューで
切り替えなければいけなくなりますよね。
それで、切り替えをしなくても良いようにと思って、
コマンドラインからパラメータで「/A」「/B」などとしたときに、Aさん用
Bさん用として、起動させたいのですが、
コマンドラインのパラメータをどこで受け取って処理しているのか
分らないのですが、教えては頂けないでしょうか?
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
補足です。
WinAPPクラスInitInstance関数のなかで、
>CCommandLineInfo cmdInfo;
>ParseCommandLine(cmdInfo);
の記述があればそのあとでパラメータの解析を行います。>>m_lpCmdLineです。
もし、作成中のプロジェクトにこの記述がない
(InitInstance関数がない等の)場合は、
CCommandLineInfoクラスの継承クラスをつくって
仮想関数
virtual void CCommandLineInfo::ParseParam(LPCTSTR lpszParam, BOOL bFlag, BOOL bLast)
を実装しましょう。
たとえば・・・
CWinApp theApp;
using namespace std;
// コマンドライン解析クラス
class CMyClass : public CCommandLineInfo{
public:
virtual void ParseParam(LPCTSTR, BOOL, BOOL);
};
//コマンドラインの個々のパラメータを解析および解釈するために、フレームワークが呼び出します
void CMyClass::ParseParam( LPCTSTR lpszParam, BOOL bFlag, BOOL bLast )
{
CString strTemp = _T(lpszParam); // パラメータ、またはフラグ
return;
}
void
main()
{
CMyClass info;
theApp.ParseCommandLine(info);
}
では^^。
No.1
- 回答日時:
CWinAppクラスのメンバであるLPTSTR m_lpCmdLineがコマンドライン引数ですので
CHogehogeAppクラス(Hogehogeはプロジェクト名と同じ)のm_lpCmdLineメンバにアクセスすればコマンドライン引数を取得する事が出来ると思います
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ビデオカード・サウンドカード PCに接続したイヤフォンのマイクが使えません。 3 2022/10/22 11:07
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- ニコニコ動画 【Premiere Pro】をお使いの方 カット作業を他動画に反映することはできますか? 1 2022/05/18 16:27
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- デスクトップパソコン 「自動修復でPCを修復できませんでした」と表示されPCが起動しないのですが対処法はありますか? 5 2022/05/13 09:16
- その他(Microsoft Office) Office(Windows版,Word/Excel/PowerPoint等)にログインできません 4 2022/07/24 15:18
- Chrome(クローム) VMWareを使用して、ChromeOSをWindows11のPCに入れたい 1 2022/11/15 19:04
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
EXEへの引数渡しについて
C言語・C++・C#
-
charからLPTSTRへの変換方法
C言語・C++・C#
-
-
4
API関数 GetExitCodeProcess
Visual Basic(VBA)
-
5
VC++スレッドの正しい終了のさせかた
C言語・C++・C#
-
6
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
7
ウィンドウ生成時にアクセス違反エラー
C言語・C++・C#
-
8
ダイアログボックスで指定したサイズどおり表示されない
C言語・C++・C#
-
9
CStringをwchar_tに変換したい
C言語・C++・C#
-
10
CStringとCByteArrayの変換
C言語・C++・C#
-
11
_tcscpy_s(wcscpy_s)の第二引数って
C言語・C++・C#
-
12
バッチファイル 二つ上のディレクトリのパス取得
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
イベントにAddHandlerされてい...
-
FriendとPublicの違い。。。
-
C#のクラス設計について教えて...
-
MFCのドラッグ&ドロップについて
-
クラスのアドレスを引数として...
-
オーバーライド関数の呼び出し...
-
既定のコンストラクタがない?
-
MRUの一時回避 VC++2008 MFC
-
MFCアプリのコマンドラインでパ...
-
C++ protectedにアクセス不可
-
vba sendKeysを送る相手のソフ...
-
MFC CSplitter内にコントロール...
-
ダイアログ表示時にチェックボ...
-
VC++ MFC CFrameWndって・・・
-
このコンパイルエラーの意味に...
-
ボタンのオーナードローについて
-
派生クラスから基本クラスprote...
-
DLLからEXEのクラスを呼び出す...
-
CMainFrameクラスの使い方
-
MessageBoxを継承したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FriendとPublicの違い。。。
-
既定のコンストラクタがない?
-
(UWSC) 「#32770」の意味わかり...
-
クラスのアドレスを引数として...
-
ダイアログ表示時にチェックボ...
-
イベントにAddHandlerされてい...
-
【ASP.NET】 独自で作成したク...
-
MFCアプリのコマンドラインでパ...
-
DebugクラスとTraceクラスの違い
-
ボタンのオーナードローについて
-
OnInitDialog()の関数の組み込み方
-
IncludeではなくClassで宣言す...
-
関数の呼び出し元の検索
-
このコンパイルエラーの意味に...
-
C++ protectedにアクセス不可
-
C++で継承元のクラスの代入演算...
-
DataGridViewのセルに斜線を引...
-
C#で通常のbuttonコントロール...
-
エディットコントロールのイベ...
-
CMainFrameクラスの使い方
おすすめ情報