VC 6 から 2022 へのアップグレードがなくなったので,手動での移行方法を試してみた.
VC6 から 2005 , 2008
VC6 から 2010 – 2019
「新しいプロジェクトの作成」で「空のプロジェクト」を選択して「次へ」
適当なプロジェクト名を付けて「作成」.
必要に応じて,VC 6 プロジェクトのファイルをコピー.
「ソリューション エクスプローラー」のプロジェクトを「右クリック」-「追加」-「既存の項目」.
cpp,h,rc を選択して「追加」.
必要に応じて「出力ディレクトリ」などの指定.
「共有 DLL で MFC を使う」に.
「_CONSOLE」を「_WINDOWS」に.
「Windows(/SUBSYSTEM:WINDOWS)」に.
ヘッダーファイルを追加していないと「クラス ウィザード」がうまく機能しない.
以下は,正しく設定されていない場合のエラー.
C:\...\afx.h(24,1): error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
「スタティック ライブラリで MFC を使用する」または「共有 DLL で MFC を使う」に.
libcmtd.lib(exe_main.obj) : error LNK2019: 未解決の外部シンボル _main が関数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) で参照されました
「Windows (/SUBSYSTEM:WINDOWS)」に.
クラス ウィザードで CAboutDlg のみ.
ソリューションに *.h を追加する.
* 他の動作はまだ確認中です.
[…] VC6 から VC2022 への移行 […]
[…] VC6 から VC2022 への移行 […]