現在のコード ページ (932) で表示できない文字を含んでいます

午前9時起床,晴れ.エッジ(Microsoft の Edge ブラウザ)では曇りとなっているが,晴れとしておこう.朝食は笹の葉(を真似た包装)に包んだ一口ご飯1個,上にエビが載ってるよ.昨夜仕掛けたファイル転送は1本はすでに完了しているが,大きい方がパネルを出して停止していた.(パソコンはスタンバイ状態になっていたが,ネットは切れていない)このパネルは「スキップ?」ですでに閉じてしまっているが,実行時パネルにはそのときの状態が残っている.

image

「宛先には同じ名前のファイルが4282個存在します」というのだが,どういうことだろう?この転送は lenovo のCドライブにある「公式リリース」フォルダの転送だが,多分その一部は前に転送されていたのだろう.従って,この動作には特に問題はないと思われる.

昨夜遅くメールをチェックしたらドスパラサポートから「初期不良製品の返送」の案内が入っていたので,荷造りを行った.同封するメモに「症状」を記入するのを忘れていたので,書き改めて再梱包した.

初期不良対応修理依頼書

下記製品には「初期不良」がありますのでご返送申し上げます.歳末のお忙しいところまことに恐れ入りますがよろしくご査収の上,ご高配賜りますようお願い申し上げます.

注文番号: ******************
製品型番: DGP-WTB1001
製造番号: TZZRD-****-****-****-****

症状:

開梱後電源アダプターをつないでWindows のセットアップを行った時点から「キー入力」が困難な状態になっていました(入力の途中でキーが入らなくなる).何度か電源を強制的に落とすような操作を繰り返してなんとか画面を開きネットアクセスできるような状態にはなりました.

キーボード入力だけでなく,カーソルが固まってタッチパッドで操作できなくなるという症状もあり,「USBデバイスが認識されていない」のようなメッセージが出ることもあります.タブレットだけをキーボードから分離して使用する場合には特に問題はありません.

現状ではタブレットをキーボードに装着して使用している状態で時間が経過するとキー入力やタッチパッドが使えない状態になります.症状は比較的短時間(数分)で発生します.タッチパッドを一度取り外して付け直すとまた動くようになりますが,長時間安定して使用することはできません.(まれにかなり長時間使える場合もありますが,装着し直すとまた同じ状態に戻ります.)

なお,同梱のパソコンは初期化してあります.
TPM(Trusted Platform Module) のリセットはパスしました.

2018年12月26日

〒366-0026 埼玉県深谷市稲荷町1-3-72 コーポEMI
馬場研究所 那須路郎
babalabo_0330@yahoo.co.jp
babalabos@gmail.com
TEL: 048-***-**** (呼び出し:〇〇〇〇)

  1. 製品本体: 10.1インチタブレット型PC DGP-WTB1001

  2. バッテリー:本体内蔵

  3. 充電ケーブル: DC5V 2.5A

  4. 保証書(取り扱い説明書)

  5. 納品書: 発行日:2018年12月22日

  6. 初期不良対応修理依頼書(本書状)

以上

送り返すパソコンはスタートメニュー→設定→更新とセキュリティ→回復で「個人用ファイル」とすべてのアプリを廃棄する完全な初期化を実施した.この「初期化」にはかなりの時間が掛かったが,最後に BIOS の供給メーカーの画面が出てきて「TPM」をリセットするかどうか?聞かれた.TPM(Trusted Platform Module)というのはセキュリティ・チップと呼ばれるデバイスで「パソコンのセキュリティ強度を高めるための専用LSI」ということのようだが,かなり新しい技術のようだ.

セキュリティ・チップは主に(1)暗号鍵の格納および暗号化機能と、(2)正常時のBIOS(基本入出力ソフト)の設定記憶機能を備える。搭載パソコンは、これら二つの機能を使って、セキュリティ強度を高める。

このチップは,他のアプリケーションが使用する暗号鍵をセキュリティ・チップが生成した別の暗号鍵を使って二重に暗号化する.生成した暗号鍵は、チップ内の不揮発性メモリーに保存される.このメモリは読み出そうとすると内容が破壊される「ダンパー特性」を持っているため,ハードディスクの持ち出しなどによる暗号の解読を防止できる.

よく分からないのでとりあえず「リセットしない」ことにしたが,「リセットする」という選択が正しかったのではないだろうか?この辺り詳しい人がいればお訊ねしたいところだ.TPM の暗号鍵はいわゆる「サプライチェーン」のどこかで盗まれる可能性がある.

ユーザの手元でそれがリセットできるのなら,ほとんど完璧なセキュリティを確立することができるのではないだろうか?リセットしたら,「二重暗号化をしない」という動作になるのだとしたら藪蛇だが…いや,大したことは期待できない.盗まれるとしたらパソコンごと盗まれているから意味はない.この二重暗号はパソコン内部でのみ通用する暗号化だから,ネット上の通信とは関わりがないので効果は限定的だ.

Visual Studio 2017 はインストール完了しているが,まだ走らせていない.その前に Visual Studio 2005 を移植しているが,SQL サーバーの互換性の問題が起きている.下記 URL では異なるバージョンのSQLサーバーを一台のパソコンに並立させる方法について解説しているのだが…

Using SQL Server in Windows 8 and later versions of Windows operating system

これによると,SQLサーバー 2005 は Windows 8 以上ではサポートされないということのようだ.対処策としては①削除するか,ないし②上位バージョンにアップグレードするしかないと言う.とりあえず,アンインストールしてみよう.SQL Server 2005 Mobile Development Tools もアンインストールしておく.さて,これで正常動作するかどうか,まずは再起動してみよう.いや,それもちょっとまずいかも…まだファイル転送が終わっていない.あと5時間残っている.

Visual Studio 2005 を起動してみよう.特に問題なく立ち上がってきたが,ビルドでエラーになる.多分パスが通っていないためと思われる.ツール→オプション→プロジェクトおよびソリューション→VC++ディレクトリ→インクルードファイルで設定しているはずだ.⇒通ったが,ビルドして以下のようなエラーが出た.

1>.\SRC\nodule.cpp : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。

以前 Visual Studio 2010 の評価版を試したときにはこのようなエラーが無数と言ってよいくらい発生したのだが,今回は1件だけなので上々と言ってよい.とは言え,これを補正するのがなかなか大変だ.どうやってこれを修正したのか覚えていない.エディタの文字が小さ過ぎるのでフォントを大きくしておこう.12ポイントに設定してみた.⇒※ノートの液晶ではなく,ワイドスクリーンを使えばよい.どちらも解像度は同じ1920×1080だから,ずっと大きく見える.

ソースファイルはシフトJISだが,ともかく指示に従ってUnicodeに落としてみよう.Unicode には3種類ある.①UTF-8シグネーチャBOM付きコードページ65001,②コードページ1200,③Big Endian コードページ1201.とりあえず②で保存してみる.これで一度開発環境を落としてもう一度読み込んでみる.⇒コンパイルはエラーなしで通ったが,以下のエラーが出る.

1>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3287: タイプ ライブラリ参照 “AxZelkovaZ3Lib” を読み込めません。ライブラリは登録されていません。 (HRESULT からの例外: 0x8002801D (TYPE_E_LIBNOTREGISTERED))
1>C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets : warning MSB3287: タイプ ライブラリ参照 “ZelkovaZ3Lib” を読み込めません。ライブラリは登録されていません。 (HRESULT からの例外: 0x8002801D (TYPE_E_LIBNOTREGISTERED))

VBプロジェクトの「参照」を見るとこれらのファイルの参照リンクが切れている.ZelkovaZ3.ocx を参照に追加しようとしたがエラーになる.

image

これはまだ,このオブジェクトがレジストリに登録されていないためではないかと思われる.いつもの奥の手が通用するかどうか?やってみよう.ツール→ツールボックスアイテムの選択でツールボックスにこのOCXを登録しようとしてエラーになった.regsvr32 で直接登録することは可能だと思うが…

image

PowerShell からZelkovaZ3.ocx を手動でレジストリ登録してみたが,エラーになった.

image

このエラーは「管理者権限がない」ために起こるとされているが,PowerShellは管理者用のツールではなかったろうか?⇒右クリックで「管理者として実行」できた.OCXの自己登録もできた.

image

今度はVBの参照にOCXを追加できたが,ビルドエラーは解消しない.奥の手を使ってリビルドして成功した.走らせてみよう.スプラッシュ画面は出たがそこでフリーズしている.かなりまずい.いや,違う.「ライセンスキーの登録」パネルが隠れていたためにそこで止まっている.

▲ライセンス登録画面を最前面に出す.

ダメだ!エラーが出てしまった.LoadNamePropertyのエラーだ.

image

そのあともう一つエラーが出た.

image

多分これは今のエラーに付随したものと思われるが…継続で新規ファイルが開いた.これ以上進むとエラーが解消してしまう惧れがあるので,デバッグを打ち切って今度はデバッグモードで走らせてみる.というか,忘れないうちにさっき unicode で保存したファイルをシフトJISに戻しておこう.ダメだ.シフトjISに戻したら同じエラーが出てしまった.これはかなりまずいと思う.どうしたらよいだろう?

前回どう対処したのか記録が残っているだろうか?エクスプローラの「検索」がうまく動作していない.lenovo では「unicode」で7件ヒットするのに,Windows 10 では1件も見つけられない.ごく短い語句なら検索できている.インデックスが生成された範囲には「ユーザー」フォルダも含まれている.検索ができないというのはかなり致命的だ.どうしたらよいか?

lenovo で検索すると「コードページ」で5件ヒットする.一番新しい2017-09-27で見ると,「単体でコンパイルしたら通った」とある.やってみたが通らない.ネットで探すと,ある人はプロジェクトのプロパティで「指定の警告を無視する」という手段で「解決」している.

以前やったのはエラーが出ている行をバイナリ検索の手法で突き止めるという方法だったと思う.それをやってみよう.ここで言う「バイナリ検索」とはソースファイルを2分割して一方をコメントアウトし,エラーが出ればそのセクションをさらに2分割するというようは方法だ.大きなファイルでもこれを使えば十段以内に解決できる.コメントするときは #ifdef NOTHING ~ #endifで止めればよい.

783行から1080行の間にあることが分かった.783行~846行の間だ.これはnodule::insert_nodeという関数だ.日本語コメントが2箇所に入っている.一度削除してペーストし直したらエラーは消えた.このようなエラーはVS2005では出たことはない.多分VS2010から「コード検査」が厳しくなっているのだろう.

ファイル転送はすでに完了しているようだ.Windows 10 ではデスクトップを複数使うことができる.これはかなり快適だ.一つを主にブラウジングとメールチェック,もう一つを開発用などと使い分けることができる.

なぜか開発環境がハングしてしまったので,再起動した.そのあと,下記のパネルが出たので続行をクリックしたが,無応答で消えた.

image

また,SQL Server 2005 に関わる警告が再度出た.もう一度リブートしてみよう.今度は何も通知は出ないようになった.更新をチェックしてみよう.Visual Studio 2005 SP1 の更新が必要なようだ.どうもこれは相当な時間が掛かりそうだ.6本ダウンロードしたうち5本が「インストールの保留中」,残り1本が「インストール中」になっているが,0%から先に進まない.それでも別の1本が完了して画面から消えた.いずれも「セキュリティ更新プログラム」だ.完了した.VS 2005 を起動したときに下記のパネルが出る.

image

VS 2005 のアイコンを右クリックして「管理者として実行」を選択しているのだが…「常にこのメッセージを表示する」のチェックを外せば出なくなるとは思われるが,忘れることもあるだろう…

ゼルコバの木をデバッグモードで走らせると,以下のパネルが出る.

image

しかし,ブレークなどの操作はできる.PDBファイルは4つあり,すべてdebugフォルダに格納されている.特に問題ないように思われるのだが…

▲ZelkovaTree2018.exeのデバッグ情報が見つからないか,または一致しません.

▲ゼルコバの木を起動して LoadNameProperty でエラーが発生する.チャンネルギャップの値がゼロになっている.この値は1~100の間でなくてはならない.⇒新規ファイルでは既定のテーマが使われるが,common files\ゼルコバの木系図\templates に標準画面設定.TMZ ファイルが存在しないためだ.これはまだアプリをインストールしていないためだが,そのような場合でもエラーになるのはまずいので対処する必要がある.

▲西暦と和暦を変換するには?という記事があった.

http://www.atmarkit.co.jp/ait/articles/0306/06/news004.html

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA