ホーム » 2019 » 4月

月別アーカイブ: 4月 2019

2019年4月
 123456
78910111213
14151617181920
21222324252627
282930  

カテゴリー

アーカイブ

ブログ統計情報

  • 79,622 アクセス



VirtualBox と WSL

Windows Subsystem for Linux を使おうと,機能の有効化を設定してみた.
Windows Sybsystem for Linux の有効化
すると,はっきりはわかっていないが,VirtualBox が不安定になった気がする.
今試すと起動するが,先日は VirtualBox の仮想マシンが起動しないこともあった.
WSL を無効化して様子見.

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

VS 2019 インストール

Win10 環境に VS 2005 ~ 2019 までをインストール.
VS 2019
XP でも動作する exe を作成する には,「プロジェクトのプロパティ」-「プラットフォーム ツールセット」を「Visual Studio 2017 – Windows XP (v141_xp)」に.
VC 2019 プラットフォーム ツールセット

------ ビルド開始: プロジェクト: i3DV, 構成: Release Win32 ------
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\v141_xp\Toolset.targets(39,5): warning MSB8051: Windows XP をターゲットとするサポートは非推奨であり、Visual Studio の将来のリリースで提供されなくなります。詳細については、https://go.microsoft.com/fwlink/?linkid=2023588 をご覧ください。
StdAfx.cpp
_WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)
ChildFrm.cpp
\\devs\documents\develop\_.src\__iwao\xml_ms_.hxx(17): warning C4192: 'ISequentialStream' を自動的に除外し、タイプ ライブラリ 'msxml6.dll' をインポートします
\\devs\documents\develop\_.src\__iwao\xml_ms_.hxx(17): warning C4192: '_FILETIME' を自動的に除外し、タイプ ライブラリ 'msxml6.dll' をインポートします
i3DV.cpp
i3DVDoc.cpp
i3DVView.cpp
MainFrm.cpp
...
コードを生成中...
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\include\sal.h(2866): warning RC4005: '__useHeader' : redefinition
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\include\sal.h(2876): warning RC4005: '__on_failure' : redefinition
i3DV142.vcxproj -> c:\Temp\i_Tools\i3DV\Release.142\Win32\i3DV.exe
プロジェクト "i3DV142.vcxproj" のビルドが終了しました。
========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ==========

Visual Studio 2019 (v142)」に戻してビルドすると,

------ ビルド開始: プロジェクト: i3DV, 構成: Release Win32 ------
StdAfx.cpp
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.20.27508\atlmfc\include\afx.h(62): fatal error C1083: include ファイルを開けません。'new.h':No such file or directory
プロジェクト "i3DV142.vcxproj" のビルドが終了しました -- 失敗。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

Windows SDK バージョン」が「7.0」になっているので「10.0 (最新のインストールされているバージョン)」に.

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

VS 2013 インストールに失敗

Win10 に,以前ダウンロードした VS 2013 iso でインストールしようとすると途中で失敗する.
VS 2013 インストール エラー
ja_visual_studio_professional_2013_with_update_5_x86_dvd_6815755.iso
丁度一年前にダウンロードしたもので,ファイルサイズは 3.71 GB .
VS 2013 with update 5 iso の情報
検索すると,
VS 2013 Professional insatlation problem with microsoft visual studio 2013 vsgraphics helper dependencies incorrect function
どうも iso が壊れている?みたいで,もう一度落とし直した.
今回落とした VS 2013 with update 5 iso の情報
ファイル名は同じだがサイズが異なる.
もう一度インストールしてみるとうまくいった.

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

VirtualBox に Win10

今ある Win10 環境をバックアップの目的で VHD に.
Disk2vhd.exe で VHD に.
Disk2vhd c ドライブのみ
VirtualBox で,仮想マシンを追加して起動しようとすると,
Press ESC in 1 seconds to skip startup.nsh any other key to continue.
VirtualBox の起動で,よくわからないエラーに


今度は次の様に他の情報も含めて VHD に.
C ドライブ以外も含めて VHD に
新しい VHD でもう一度起動しようとすると,
FATAL: No bootable medium found! System Halted.
起動可能なメディアが見つかりません
VirtualBox の設定で,「EFI を有効化」してうまく起動した.
VirtualBox 設定  EFI を有効化

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

Win 10 設定

新しく Win10 環境が手に入ったので,その設定のメモ.


エクスプローラの設定
「エクスプローラ」の「ファイル」-「オプション」.
「開いているフォルダーまで展開」にチェック.
「タイトルバーに完全なパスを表示する」にチェック.
「ログオン時に以前のフォルダーウィンドウを表示する」にチェック.
「登録されている拡張子は表示しない」のチェックを外す.
エクスプローラのオプションの設定


バージョンの表示
HKEY_CURRENT_USER\Control Panel\Desktop
PaintDesktopVersion


ファイルマネージャは次の所から.
https://github.com/Microsoft/winfile/releases
以前のバージョンより良くなっている.


電源メニューに「休止状態」の表示
https://dynabook.com/assistpc/faq/pcdata2/016713.htm

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

3DS 保存でアプリケーションエラー

次の様な 3DS 形式で保存するコード.
データ部分が空の時,アプリケーションエラー.
3DS 保存でアプリケーションエラー

bool	save_3DS	(FILE* ofp,const tDS_Chunk& chnk)
{
	if (ofp == NULL)		{	return	false ;		}
	{
		u_16	id  = chnk.GetID() ;
		u_32	len = chnk.GetLen() ;
		v_u__8	data= chnk.GetData() ;
		::fwrite(&id,		1,		sizeof(u_16),	ofp) ;
		::fwrite(&len,		1,		sizeof(u_32),	ofp) ;
		::fwrite(&data[0],	data.size(),	sizeof(u__8),	ofp) ;
		}
	for (size_t index=0 ; index<size_t(chnk.GetChildCount()) ; index++) {
		tDS_Chunk	child = chnk.GetChild(long(index)) ;
		bool	result = ::save_3DS(ofp,child) ;
		if (!result)		{	return	false ;		}
		}
	return	true ;
	}

::fwrite(&data[0], data.size(),sizeof(u__8), ofp) ; がうまくない.
次の様な感じでコードを修正.

if (data.size() > 0) {	::fwrite(&data[0],	data.size(),	sizeof(u__8),	ofp) ;	}

VC 6 や VC 14 では,たまたまだと思うがエラーにならなかった.


VC 14 デバッグ版では,アサートされることを確認.
サイズ 0 の vector の fwrite VC 14 デバッグ版でアサート

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

C1189 : WINDOWS.H already …

幾つかの,MFC を使用していないプロジェクトをビルドしていると,

--------------------構成: GAtoSTL - Win32 Release--------------------
コンパイル中...
GAtoSTL.cpp
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE\afxv_w32.h(14) : fatal error C1189: #error :  WINDOWS.H already included.  MFC apps must not #include <windows.h>
cl.exe の実行エラー

GAtoSTL.obj - エラー 1、警告 0

MFC アプリでは windows.h をインクルードしてはいけないというエラー.
最近(2019/03)変更したコードで,意図せず Afx.h などを利用するようになってしまった所があると思われる.
今回の場合,デバッグ版や Linux 環境,VC 14 などでは通っている.


次の様な内容を include している部分に挿入して確認すると,
 #pragma message (“message 1”)
Zip.hxx がうまくない.

#ifndef		I_SUPPORT_ZIP			//	ここは個人的なコードです
	#ifdef	_DEBUG
		#include	"i_Zip.hxx"	//	STL と Windows.h
	#else
		#include	"a_Zip.hxx"	//	AfxDisp などを使用
	#endif
#endif

a_Zip.hxx は zip を扱う古い形式(MFC を使用している)のもの.
i_Zip.hxx は MFC を使用しないように変更したもの.
a_Zip.hxx を使用しないように変更.


2019/08/26 追加
このエラーが表示される原因は,
MFC 関連の afx*.h がインクルードされる前に Windows.h が読み込まれているため.
MFC を使用しているプロジェクトで StdAfx.h を使用してない場合は,
ソース内のヘッダのインクルードで最初に #include <afxwin.h> などとすれば良い.
#include <afxwin.h>
2020/02/14
それから,作成したヘッダファイル内では Afx*.h のインクルードはしない方が良さそう.
https://dev.mish.work/wordpress/2020/02/08/lnk2005-operator-delete/


次のエラーの場合はこちら
error C1189: #error: Please use the /MD switch for _AFXDLL builds
fatal 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]


2020/10
コンソール AP で Windows.h を使用する時の hxx を用意した.
コンソール AP での define
_AFXDLL で判断しているため 「MFC のスタティックライブラリを使用」には対応できない


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

認証要請が、このドメイン名に …

Let’s Encrypt 証明書を手動で更新していて,
「最大の認証要請が、このドメイン名に到着しました。」のエラーに.
最大の認証要請が、このドメイン名に到着しました。
作成や更新を,何度も要求した影響か?


DS115j は最近自動で更新されているみたい.
DS116 は,2019/01 に更新した時のまま.
その後どうなったかを試していて,DS115j の証明書がうまく取得できていない.


2019/04/03 DS116 の方は更新されたみたい.
DS116 の Let's Encrypt は更新済み


2020/04/14
その後更新されないこともあったが,今は特に問題なし.

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