Iwao Dev

気付いたことをメモしています.

この画面は、簡易表示です

2019 / 6月

Win10 VC 2005 で C1083 msxml.dll

今まで WinXP + VC 2005 だったプロジェクトを Win10 に持ってきてビルドすると,

1>------ ビルド開始: プロジェクト: i3DV, 構成: Debug Win32 ------
1>コンパイルしています...
1>MainFrm.cpp
1>t:\develop\_.src\__iwao\xml_ms_.hxx(21) : fatal error C1083: タイプ ライブラリ ファイルを開けません。'msxml.dll': No such file or directory
1>i3DVView.cpp
1>t:\develop\_.src\__iwao\xml_ms_.hxx(21) : fatal error C1083: タイプ ライブラリ ファイルを開けません。'msxml.dll': No such file or directory
  ...
1>コードを生成中...
1>i3DV - エラー 16、警告 0
========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========

Win10 には msxml.dll がないためエラーとなっている.
VC 2008 以降のプロジェクトは Win7 でビルドできる様にしていたので問題ない.

#if (_WIN32_WINNT >= 0x0600)	// Vista
    #import	<msxml6.dll>       named_guids
    #define	MSXML              MSXML2
    #define	CLSID_DOMDocument  CLSID_DOMDocument60
#else
    #import	<msxml.dll>        named_guids
#endif

WinXP 環境でも msxml6.dll は存在しているので,_MSC_VER>=1400 で判断する様に変更.
'msxml.dll': No such file or directory への対応

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


VC 10 以降で C2146 C4430

共通のソースなどが入っているサーバ WSS が壊れたので,他に逃がして「T:ドライブ」として参照するようにした.
VC のディレクトリの設定を DevS より下に T:\ を追加.
その時,VC 10 以降の次のファイルを編集してビルドが通らなくなってしまった.
C:\Users\Iwao\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp. … .user.props

1>------ ビルド開始: プロジェクト: DmpC, 構成: Debug Win32 ------
1>  StdAfx.cpp
1>  _WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(290): error C2146: 構文エラー : ';' が、識別子 'PVOID64' の前に必要です。
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(290): error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(8992): error C2146: 構文エラー : ';' が、識別子 'Buffer' の前に必要です。
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(8992): error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\winnt.h(8992): error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

原因は DX90SDK の Include で,間違って追加した次のものを削除して対応.
T:\Develop\Lib\DX90SDK\Include;
VC 10 間違って DX90SDK のインクルードを追加してしまった

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


WSS その後

先日からシャットダウンされる現象があったが,ディスクが壊れた?
丁度 5 年になる.


アイ・オー・データ機器 クラウド状態管理NarSuS からのお知らせです
****@********.jp 様
<機器情報>
製品名    :HDL-Z2WM2C2
シリアル番号 :S***********
MACアドレス:34:76:c5:1d:ca:60
ファームver  :1.48(1.39)
<設置場所>
電話番号:0*********
住所  :***********************
●2019/06/27 06:05
内蔵スロット1のディスクにエラーが検出されました。
HDD状態が異常です。ステータス情報画面を開き、HDD状態を確認してください。データバックアップ後にカートリッジを交換してください。
詳しくは「状態管理NarSuS」にログインしてご確認ください。
「クラウド状態管理NarSuS」へのログインはこちら
 https://www.narsus.jp
※このメールは送信専用のメールアドレスから配信されています。
ご返信いただいてもお答えできませんのでご了承ください。
HDL-Z2WMC2C2 NarSus ステータス情報
この画面の「アクション」と書かれた部分を押すと,カートリッジの交換方法が表示される.
ここを見ると,次のように書かれている.
【ご注意】
●ハードディスク故障が発生した場合、カートリッジの交換を行う前に、必ずデータのバックアップを行ってください。
●バックアップしたデータの確認が終わるまでは、電源を切らないようにしてください。電源OFF後に製品を再起動した際に製品が正常に起動せず、製品内のデータにアクセスできない場合や、RAID構成が崩壊し修復不能の状態に至る危険性がございます。
マニュアルも確認すると,電源を入れたまま交換するみたい.


現在,見た目(ネットワークから覗く限り)は普通に見えるので,他の NAS にバックアップ中.
交換用カートリッジ(ハードディスク)は HDLZ-OP1.0R
リモートで接続してイベントビューアで見ると,確かに壊れているみたい.
Harddisk0\DR0 に不良ブロックがあります。
ディスクの管理 再構築中 88%
ディスクの管理 再構築完了

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


WSS がシャットダウンされる

2019/06/20 にもあったが,


アイ・オー・データ機器 クラウド状態管理NarSuS からのお知らせです
****@*********.jp 様
<機器情報>
製品名    :HDL-Z2WM2C2
シリアル番号 :S***********
MACアドレス:34:76:c5:1d:ca:60
ファームver  :1.48(1.39)
<設置場所>
電話番号:0*********
住所  :**********************
●2019/06/25 05:23
前回のシステムシャットダウンは予期されていませんでした。
詳しくは「状態管理NarSuS」にログインしてご確認ください。
「クラウド状態管理NarSuS」へのログインはこちら
 https://www.narsus.jp
※このメールは送信専用のメールアドレスから配信されています。
ご返信いただいてもお答えできませんのでご了承ください。


タイミングとしては,バックアップが終わった頃か?
キーワードの指定が悪いのかもしれないが,検索してもあまり情報がなさそう.
先日 Windows Update してからなので,その中で関連しそうな KB4503276 を外して様子見.
WSS がシャットダウンされるので,Windows Update の画像


KB4503276 をアンインストールして再起動すると今度は KB4493446 が入ってしまう.
切り分けのためにこれもアンインストール.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


VC 2017 , 2019 Browse.VC.db エラー

VC 2017 や 2019 のプロジェクトファイルを開いたとき,
VC browse.vc.db エラー
—————————
Microsoft Visual Studio
—————————
C++ 参照データベース ファイル E:\Temp\_Fallbck\\BROWSE.VC-74b349de\Browse.VC.db を作成または開くときにエラーが発生しました。C++ プロジェクトでは、IntelliSense と参照情報は利用できません。
試せる修正方法:
他のアプリケーションがファイルにアクセスしていないことを確認します。
この問題が解決しない場合、ファイルを削除してからソリューションを再度開いてください。
—————————
OK
—————————


今まで気が付かなかったが,
この記事を書いていてよーく見ると,_Fallbck\\ とバックスラッシュが 2 つになっている.
VC 2015 までは大丈夫だった E:\Temp\_Fallbck\ がうまく認識してくれないみたい.
E:\Temp\_Fallbck の様に最後の \ を削除してエラーがなくなった.
VC 2017 フォールバック位置の指定

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


auひかり ASUS ルータで IPSec VPN

先日 OpenVPN の設定は行ったが,今度は IPSec VPN .
発売当初には機能がなかったため?か,あまり設定情報が見つからない.


IPSec VPN サーバーを有効にする「ON」.
「ユーザー名」と「パスワード」を追加.
ASUS RT-AC86U IPSec VPN 設定
Android での設定は「設定」-「ネットワークとインターネット」-「VPN」.
「+」を押して「名前」を入力.
「タイプ」は「IPSec Xauth PSK」を選択.
「サーバーアドレス」は IP または DNS 名を指定.
「IPSec事前共有鍵」を入力(デフォルトだと 00000000 ).
「ユーザー名」と「パスワード」は登録したものを入力.
Android IPSec VPN 設定 1
Android IPSec VPN 設定 2
iOS の場合は次のような感じ.
iOS IPSec VPN 設定


最初 LAN 内で設定していたが,それではうまく接続できなかった(OpenVPN は可能).
これに気付くのにしばらく時間がかかってしまった.


今回これを試したのは,上海からの OpenVPN がうまく動作しなくなったため.
しかし,IPSec VPN でもうまく接続できず.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


「休止状態」がなくなった?

昨日の夜,PC の使用を終えようとすると「休止状態」が表示されていない.
「休止状態」がない
本来は次の様にしている.
「休止状態」あり
「スリープ」に移行する bat ファイルがうまく機能しなかったためと思われる.
powercfg /h off
rundll32 PowrProf.dll,SetSuspendState 0,1,0
powercfg /h on


管理者として実行」した「コマンドプロンプト」で
powercfg /h on
powercfg /h on

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


クラスの配列のダンプ

先日の「クラスの配列」をダンプする template を利用するためのサンプル.

// *******************************************************************************
// Name   : tpl_tstr.cpp
//        : test template To_string vector
// Author : I. Nakagawa
// Create : 2019/06/13
// *******************************************************************************

#include <iostream>
#include "i_vector.hxx"
#include "tstring.hxx"
#include "i_define.hxx"
#include "_tdefine.hxx"

// *******************************************************************************
// To tstring
// Create : 2019/06/10
// *******************************************************************************
template <class T> tstring To_tstring(const std::vector<T>& vt)
{
    tstring str ;
    for (size_t index=0 ; index<vt.size() ; index++) {
        T       e1 = vt[index] ;
        tstring s1 = e1.To_tstring() ;
        str += s1 + _T("\r\n") ;
        }
    return str ;
    }

// *******************************************************************************
// sample class
// Create : 2019/06/13
// *******************************************************************************
class Str_2 {
public:
    Str_2 (const tstring& s1=tstring(),const tstring& s2=tstring()) { Str1 = s1 ; Str2 = s2 ; }
public:
    virtual tstring To_tstring (void) const { return Str1 + _T("\t") + Str2 ; }
protected:
    tstring Str1 ;
    tstring Str2 ;
    } ;

typedef std::vector<Str_2> v_Str_2 ;

// *******************************************************************************
// main
// Create : 2019/06/13
// *******************************************************************************
int _tmain (int argc,TCHAR* argv[])
{
    _tsetlocale(LC_ALL,_T("")) ;
    {
        v_Str_2 v_s2 ;
        {
            Str_2 sd_1(_T("asdf"),_T("qwer")) ;
            Str_2 sd_2(_T("zxcv"),_T("ASDF")) ;
            Str_2 sd_3(_T("QWER"),_T("ZXCV")) ;
            Str_2 sd_4(_T("1234")) ;
            Str_2 sd_5 ;
            v_s2.push_back(sd_1) ;
            v_s2.push_back(sd_2) ;
            v_s2.push_back(sd_3) ;
            v_s2.push_back(sd_4) ;
            v_s2.push_back(sd_5) ;
            v_s2.push_back(sd_4) ;
            v_s2.push_back(sd_3) ;
            v_s2.push_back(sd_2) ;
            v_s2.push_back(sd_1) ;
            }
        std::tout << ::To_tstring<Str_2>(v_s2) ;
        }
    return 0 ;
    }

DS116 での動作テスト.
DS116 上でのクラスの配列のダンプ

C:\WINDOWS\system32>cd C:\Users\Iwao\AppData\Local\Temp

C:\Users\Iwao\AppData\Local\Temp>ssh -l Iwao -p 22 192.168.xx.xx
Iwao@192.168.xx.xx's password:
Iwao@DS116:~$ source ./set_ds_inc.sh
Iwao@DS116:~$ cd gcc_test/Test/tpl_tstr/
Iwao@DS116:~/gcc_test/Test/tpl_tstr$ ll
total 20
drwxrwxrwx+  3 Iwao users  4096 Jun 13 10:42 .
drwxrwxrwx+ 15 Iwao users  4096 Jun 13 10:32 ..
drwxrwxrwx+  2 Iwao users  4096 Jun 13 10:42 bak
-rwxrwxrwx+  1 Iwao users  2166 Jun 13 10:35 tpl_tstr.cpp
Iwao@DS116:~/gcc_test/Test/tpl_tstr$ g++ tpl_tstr.cpp
Iwao@DS116:~/gcc_test/Test/tpl_tstr$ ll
total 44
drwxrwxrwx+  3 Iwao users  4096 Jun 13 10:43 .
drwxrwxrwx+ 15 Iwao users  4096 Jun 13 10:32 ..
-rwxrwxrwx   1 Iwao users 23540 Jun 13 10:43 a.out
drwxrwxrwx+  2 Iwao users  4096 Jun 13 10:42 bak
-rwxrwxrwx+  1 Iwao users  2166 Jun 13 10:35 tpl_tstr.cpp
Iwao@DS116:~/gcc_test/Test/tpl_tstr$ ./a.out
asdf qwer
zxcv ASDF
QWER ZXCV
1234

1234
QWER ZXCV
zxcv ASDF
asdf qwer
Iwao@DS116:~/gcc_test/Test/tpl_tstr$ 
この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


改行コード

デバッグ用で class の配列のデータのダンプのために次の様なコードを作成.

template	<class	T>	tstring	To_tstring(const std::vector<T>& vt)
{
	tstring	str ;
	for (size_t index=0 ; index<vt.size() ; index++) {
		T   	e1 = vt[index] ;
		tstring	s1 = e1.To_tstring() ;
		str +=	s1 + _T("\r\n") ;
		}
	return	str ;
	}

それで気になったのが,それぞれの OS での改行コード.
wiki 改行コード
mac も LF になっていた.


cat コマンドでは -e で改行コードの表示が可能.
cat --help

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ


NAS 上の「ディスク上のサイズ」

比較的小さなファイル(数 K バイト)をバックアップしていて,サイズを見ると異常に大きい?
NAS 上のファイルの「ディスク上のサイズ」が大きい
292 個のファイルで「ディスク上のサイズ」が 292 MB の表示.
ファイルを置いているのは,NAS の HDL-AHW
Win7 で利用していた時は気にならなかったと思い,そちらで見ると問題ない.
Win7 での表示
今度は 1 バイトのファイルを作成して同じ様にみると,Win10 では 1 MB となる.
1 バイトのファイのプロパティ
異なるメーカーの NAS の情報だが,その様になってしまうみたい.
BUFFALO リンクステーション スマホ・タブレットで使える ネットワークHDD
LinkStation LS420D0402C
WD CloudSynology NAS DS116 では問題ない.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ



    top

    %d人のブロガーが「いいね」をつけました。