Iwao Dev

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

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

メモ

FBX SDK 2019.2 で LNK2019

先日の FBX SDK を使用したプロジェクトを VC 2017 と FBX SDK 2019.2 に上げてビルドすると,


LibFbxSDK-MD.lib(fbxmanager.obj) : error LNK2019: 未解決の外部シンボル _xmlCleanupParser が関数 “void __cdecl fbxsdk::Close3rdPartyLibraries(void)” (?Close3rdPartyLibraries@fbxsdk@@YAXXZ) で参照されました。
LibFbxSDK-MD.lib(fbxiosettings.obj) : error LNK2019: 未解決の外部シンボル _xmlStrcmp が関数 “struct _xmlNode * __cdecl fbxsdk::GetChildXmlNode(struct _xmlNode *,class fbxsdk::FbxString *)” (?GetChildXmlNode@fbxsdk@@YAPAU_xmlNode@@PAU2@PAVFbxString@1@@Z) で参照されました。
LibFbxSDK-MD.lib(awCacheDescriptionIO.obj) : error LNK2001: 外部シンボル “_xmlStrcmp” は未解決です。
LibFbxSDK-MD.lib(fbxiosettings.obj) : error LNK2019: 未解決の外部シンボル _xmlNewDoc が関数 “public: virtual bool __thiscall fbxsdk::FbxIOSettings::WriteXMLFile(class fbxsdk::FbxString const &)” (?WriteXMLFile@FbxIOSettings@fbxsdk@@UAE_NABVFbxString@2@@Z) で参照されました。
LibFbxSDK-MD.lib(xmlHelper.obj) : error LNK2001: 外部シンボル “_xmlNewDoc” は未解決です。


今まで LibFbxSDK-MD.lib のみだったが,libxml2-md.lib と zlib-md.lib が増えた(分割された?)みたい.
FBX SDK 2019.2 で LNK2019 未解決の外部シンボル
リンク対象にこれらを加えれば OK .

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

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


VC 2015 x64 プロジェクトで C1128

FBX SDK を使用した VC 2015 x86 プロジェクトを x64 にしたら,
—— ビルド開始: プロジェクト:FBXtoM, 構成:Debug x64 ——
FBXtoM.cpp
FBXtoM.cpp(73): warning C4244: ‘初期化中’: ‘INT_PTR’ から ‘int’ への変換です。データが失われる可能性があります。
FBXtoMDg.cpp
E:\…\FBXtoM\FBXtoMDg.cpp : fatal error C1128: セクションの数がオブジェクト ファイル形式の制限を超えています: /bigobj と共にコンパイルしてください


Release 版では C4244 の warning は出るがビルドできる.
C4244 はアプリケーションクラスの dlg.DoModal の戻り値を int から INT_PTR に.
C1128 の対応は x64 Debug 版の「プロパティ」-「C/C++」-「コマンドライン」-「追加のオプション」に /bigobj を追加.
VC 2015  x64 Debug 版のコンパイルオプション /bigobj

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

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


VC 2015 Release.exe で 0xC0000005

今まで VC 2013 だったプロジェクトを VC 2015 に.
Release 版を実行するとエラーに.
0x006F3947 で例外がスローされました (FBXtoM.exe 内): 0xC0000005: 場所 0xFFFFFFFF の読み取り中にアクセス違反が発生しました
この例外のハンドラーがある場合は、プログラムを安全に続行できます。
0xC0000005: 場所 0xFFFFFFFF の読み取り中にアクセス違反が発生しました
Debug 版では問題ない.また,VC 2013 Release 版も通る.
変数 bp がおかしくなっているっぽいがよくわからない.


このプロジェクトは FBX SDK を使用しているため,VC が限定される.
そのため,この部分の単体テスト用のプロジェクトがあったのでそれを VC 6 から順にビルド.
やはり,VC 2015 では実行時エラーとなる.VC 2017 は通る.
検索すると「VC 2015 の問題」と思われる情報があった.
Visual Studio 2015 および Visual C++ 2017 のリンク時のコード生成における最適化の不具合について
今使っている VS 2017 のバージョンは 15.9.13 .


単体テストプロジェクトで,書かれていた回避策を試したが効果なし?
コンパイルの「最適化」で「実行速度の最大化(/O2)」を「サイズの最小化(/O1)」に変更して通る様にはなった.
VC 2015 コンパイル時の最適化の指定


次の様に bp を求める部分を使用する直前に移動して対応.

	if (0<=lv && 0<=bv) {
	//	Vd3	bp = lp-be.lll() ;
		bi->SetLV1(bIndex,lv) ;
		bi->SetLV2(bIndex,lv) ;
		bi->SetLP1(::ToP3(lp)) ;
		bi->SetLP2(::ToP3(lp)) ;
		bi->SetBV1(bv) ;
		bi->SetBV2(bv) ;
		Vd3	bp = lp-be.lll() ;
		bi->SetBP1(::ToP3(bp)) ;
		bi->SetBP2(::ToP3(bp)) ;
		}
この投稿は役に立ちましたか? 役に立った 役に立たなかった 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 がシャットダウンされる

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技術ブログへ


改行コード

デバッグ用で 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技術ブログへ


Win10 Hyper-V インストール – 3

VirtualBox で作成した VDI の Hyper-V での利用.


VDI から VHD への変換が必要になる.
VirtualBox のイメージを Hyper-V のVHD形式に簡単にコンバートする方法
VirtualBox – 仮想クドライブ変換 VDI形式 -> VHD形式


Microsoft Windows [Version 10.0.18362.113]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\Iwao>"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd D:\VHD.HPV\Win10_IP\Win10_IP.vdi D:\VHD.HPV\Win10_IP\Win10_IP.vhd  -format VHD
VBoxManage.exe: error: Cannot register the hard disk 'D:\VHD.HPV\Win10_IP\Win10_IP.vdi' {ca7e8f58-344b-41c1-8c8f-e57fbe497adc} because a hard disk 'E:\VHD\Win10_IP\Win10_IP.vdi' with UUID {ca7e8f58-344b-41c1-8c8f-e57fbe497adc} already exists
VBoxManage.exe: error: Details: code E_INVALIDARG (0x80070057), component VirtualBoxWrap, interface IVirtualBox, callee IUnknown
VBoxManage.exe: error: Context: "OpenMedium(Bstr(pszFilenameOrUuid).raw(), enmDevType, enmAccessMode, fForceNewUuidOnOpen, pMedium.asOutParam())" at line 191 of file VBoxManageDisk.cpp

C:\Users\Iwao>"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" clonehd E:\VHD\Win10_IP\Win10_IP.vdi D:\VHD.HPV\Win10_IP\Win10_IP.vhd -format VHD
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone medium created in format 'VHD'. UUID: 7b8bbd69-c19e-4224-a338-a8734dbcad0c

C:\Users\Iwao>

Hyper-V で開いた Win10
設定がうまくないのかもしれないが,VirtualBox に比べて少し遅い様に感じる.


何か方法があるのかもしれないが,WinXP などサポート対象でない仮想マシンは私の場合使い物にならない.
この辺りは VirtualBox などは意図した動作をしているので,そちらで使い続ける様になりそう.

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

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



    top

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