ホーム » 検索結果: リモートデバッグ

検索結果: リモートデバッグ

2024年4月
 123456
78910111213
14151617181920
21222324252627
282930  

カテゴリー

アーカイブ

ブログ統計情報

  • 80,403 アクセス



リモートデバッグ

以前仮想マシンの XP にリモート環境を作って,その当時はそれなりに使ったと思う.


どうも起動が不安定だったが,複数のアダプターが影響していた?


リモート PC は,TestInst . 
ローカルは DevXP と T54W7U64 .


VC 6
プロジェクトの設定で,スタティックにするなどして,対象 exe 以外の dll などがなくても動作する様にしている.

リモート側で \\DevXP\….\Debug.060\i3DV.exe を実行できる様にする.
ローカル側でも同様の指定で実行可能な設定にしている.

VC 6 の設定で,メニューの「ビルド」-「デバッガリモート接続」でリモート PC を設定.

デバッグモニタの設定は,


VC 8
プロジェクトの設定は,場所が違うだけで内容は VC 6 と同じようなもの.

リモート側では exe はこの様に見える.

デバッグモニタの設定は,

デバッガで実行すると,i3DV.exe が起動する.


VC 10
リモートデバッガのインストールから.DVD 内の rdbgsetup_x86.exe を実行してインストール.

他は,VC 8 などと同様.

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

VC6 , VC8 リモートデバッグ

VC6
mk:@MSITStore:J:MSDNvccore.chm::/html/_core_setting_up_the_remote_debug_monitor.htm
http://support.microsoft.com/kb/241848/ja
https://www.betaarchive.com/wiki/index.php?title=Microsoft_KB_Archive/241848
以下のファイルをターゲット PC にコピー

1998-07-06 00:00 24,651 MSVCMON.EXE
2004-02-27 00:00 106,566 DM.DLL
2000-07-15 00:00 184,320 MSDIS110.DLL
2008-04-14 11:25 413,696 MSVCP60.DLL
2004-02-17 00:00 278,581 MSVCRT.DLL
2000-07-15 00:00  28,746 TLN0T.DLL

VC7
ms-help://MS.VSCC/MS.MSDNVS.1041/vsdebug/html/vctskInstallingRemoteDebugMonitor.htm
http://msdn.microsoft.com/ja-jp/library/aa291492(VS.71).aspx
C:\Program Files\Microsoft Visual Studio .NET\Common7\Packages\Debugger\
 msvcmon.exe
 msvcr70.dll
 NatDbgTLNet.dll
 NatDbgDM.dll
デバッグを開始できません.
プログラム ” を開始できません。
現在のユーザーのコンテキストで実行中のリモート コンピュータに MSVCMON がありません。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Machine Debug Manager]
"AllowLaunchAsOtherUser"=dword:00000001
うまく起動できない


VC8
http://msdn.microsoft.com/ja-jp/library/ey7ec813.aspx
http://msdn.microsoft.com/ja-jp/library/ey7ec813(VS.80).aspx
http://msdn.microsoft.com/ja-jp/library/bt727f1t(VS.80).aspx
 MSVSMon.exe
 DbgHelp.dll
 MSDbgUI.dll

http://support.microsoft.com/kb/908099/ja


VC9
http://msdn.microsoft.com/ja-jp/library/bt727f1t.aspx
http://msdn.microsoft.com/ja-jp/library/bt727f1t(VS.100).aspx
 MSVSMon.exe


リモートデバッグ

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.

MDI exe が動作しない?

Win10 Insider Preview 21H1 環境で,幾つかの exe がうまく動作しない.
引数が正しくありません。
VC 8 でビルドした exe は OK .VC 10 以降は NG のものがある.
SDI exe は大丈夫そうで,MDI exe はすべてではないが NG のものが多い.
タイミングとしては,3D データを読み込んだ後,ウィンドウに表示する前.


2021/07/12
一度「開く」ダイアログを表示するとその後はうまく動作する.


SDI exe であっても,VC 14 MFC スタティックだとうまくない?
MFC をスタティックリンクした exe でうまく動作しない
これはプロジェクトの設定がまずかったためで,別の記事に


2021/04/01
ちょっとわからないので,リモートデバッグの環境を作成することに.
MSDN Visual Studio での C++ プロジェクトのリモート デバッグ
リモートツールをダウンロードして,インストール.「スタート」から「Remote Debugger」を起動.
VS 2017 Remote Debugger
リモート側で exe を実行して,ホスト側で「アタッチ」.
VS でリモートのプロセスにアタッチ


2021/04/02
原因は,CRecentFileList::Add を通った時 ::CoInitinalize が呼び出されていないため.
CRecentFileList::Add  0x800401f0:CoInitialize は呼び出されていません
どうも MFC 10 から?変わったみたい.
MS C++ executable just started failing
MFC application crashing in ProcessShellCommand() when file to open specified on command line
それでも,なぜ環境によっては表面化しないのか?


CRecentFileList::Add で Win7 以降の「ジャンプリスト」に登録(::SHAddToRecentDocs )する様になった.
Win10 20H2 でも現象は発生した.2004 では問題ない.


対応としては InitInstance の最初に以下を追加.

	// OLE ライブラリを初期化します。
	if (!AfxOleInit()) {
		AfxMessageBox(_T("OLE の初期化に失敗しました。")) ;
		return	FALSE ;
		}

2021/04/06
2016/夏頃の Win10 で,その様になるものが存在したみたい.
その頃は T90Chi + VC 2015 + i3DV でやっていたと思うが,気づかなかった?

Is this 投稿 useful? Useful Useless 1 of 1 people say this 投稿 is useful.

VC 14 exe を XP でデバッグ

昨日リモートデバッグの環境を作っていったが,VC 14 では XP 上のリモートデバッグができない?
VC 11 以降 XP などについて具体的には書かれてない


今回リモートデバッグしようと思ったのは,VC 14 でビルドした exe が XP で実行できないことにあった.
Win 7 などでは問題ない.また,VC 12 などでビルドした exe なら大丈夫.
現象は,exe の起動はできるが 3D モデルを開く時,エラーメッセージも出ずに終了してしまう.


デバッグ版のプロジェクトで以下を設定.
  スタティック ライブラリで MFC を使用する
  Visual Studio 2015 – Windows XP (v140_xp)
ビルドして,リリース版と同様の現象になることを確認.


XP 環境には VC 8 が入っているので,
 デバッグ版 exe をエクスプローラなどから起動し,「ツール」-「プロセスにアタッチ」.
_tstati64 の呼び出しで,errno が 22(EINVAL 引数が無効です)となってしまう.


exe が終了してしまったのは,ファイルサイズが正しく取れなかったための無限ループ.

    bool    v_c_Save    (LPCTSTR pathName,const std::vector text)
    {
        FILE*	ofp = ::Open_File(pathName,_T("wb")) ;
        if (ofp == NULL) {
            return    false ;
            }
        if (text.size() > 0) {
            ::fwrite(&text[0],sizeof(char),text.size(),ofp) ;
            }
        ::fclose(ofp) ;
        if (text.size() > 0) {
            u_64    fSize =F_Stat::GetSize(pathName) ;
            if (fSize == 0) {
                return	v_c_Save(pathName,text) ;
                }
            }
        return  true ;
        }

無限ループにならない様に,ループカウンタを追加.
exe が抜ける現象は解消されて 3D モデルが表示できる様にはなったが,stat の部分の対応はこれから.

Is this 投稿 useful? Useful Useless 0 of 0 people say this 投稿 is useful.