パソコンと一緒にお菓子が入ってましたよ~

WinMergeを使って全ソースファイルの比較検査を行ったところ,ミスがぼろぼろ出てきた.⇒修正を入れて,少なくとも旧版の部分は復元できた.あとはこれをデバッグするしかない.バックアップを取ってから始めることにしよう.修正箇所にはすべて「NODULE:nodegeneをBobjectに移管する@20201020」が入っているので,この部分だけ検査すればよいはずだ.まず,複数クラスに新たに追加した変数nodegeneをコンストラクタで初期化しておいた方がよい.対象クラスはCARDLINK, MARGBOX, COMPLISTだけだ.

tamo2さんからVAIO ノートパソコンが届いた.パソコンと一緒にお菓子まで!パッキングするときはお菓子を詰めましょう!

Version 1.9.9.99が走っていると聞いたのでてっきり32ビット機と思っていたが,64ビット機だった.ほとんど新品同様!RAM 8MB, HD 100Gもあるのでサブマシンとして使っているタブレットの2倍のキャパがある.このタブレットはときどき電源が入らなくなったり,かなり不安定なところがあるのでバックアップ機になりそうだ. ゼルコバの木ベータ2では新しいバージョンで作ったサンプルは読めないので,古いサンプルを探してみよう.2013年頃のサンプルならかなりあるのだが,Version 1.9.9.99をリリースしたのは2012年の3月だ.サイトのバックアップにはかなり古いものがあり,その中にもサンプルがある.

外付けHDのバックアップにあるZelkova Shootsフォルダにはアルファ版のサンプルまで入っている.tamo2さんはすでに1万件に近いデータを入力されているゼルコバの木の最強ユーザだが,ずっとVersion 1.9.9.99を使われているので,いよいよとなればZELファイルの入ったフォルダを一括コンバージョンできるようなツールが必要かもしれない.ちょっと厄介な問題が出てきた.これまではまったく意識されてこなかった点だが,どうもmsiインストーラでインストールされたプログラムはインストール元のmsiと紐付けされているのではないだろうか?

tamo2さんから送られてきたノートにはあらかじめゼルコバの木ベータ2がインストールされていて起動できることも確認してあるが,別のログインアカウントを作ってそこから開こうとすると,msiのファイルを探す動作になってしまう.ゼルコバの木ベータ2のアイコンは新しく作ったアカウントのデスクトップにもあって使える状態にはなっているのだが,起動できない.実行しようとすると以下のようなパネルが出る.

image

このmsiインストーラのコピーをデスクトップ上に置いて,「ソースを使用」ボックスに入力してOKを実行すると,

image

のようなメッセージが出て「致命的なエラー」で終わってしまう.もし,ここでこの新しいユーザがこのアプリをアンインストールした場合,元のユーザはどうなってしまうのだろう?常識的に考えれば元のユーザはこれまで通り使えなくてはおかしいということになると思われるのだが…アンインストールは簡単だが,それをやってもし元のユーザからも使えなくなると元も子もなくなってしまう.ともかく,別のマシンを使ってVer 1.9.9.99が任意の64ビット機にインストール可能であることを確認しておこう.このマシンには一度もインストールしたことがないので試してみることにしよう.⇒ダメだ.

image

どこが違うのだろう?tamo2氏のノートはCPUはIntel Core 13-3227U でOSはWindows 10 Home 2004 64ビットだ.OSのインストール日付は2020/08/09なのでつい最近インストールされているみたいだが…コメントを読み直してみると,Windows 8から10にアップデートしたとあるので,Windows 8の時期にインストールされたものと思われる.しかし,Windows XPでも64ビット版があるくらいなのだから,このWindows 8も64ビットOSだったのではないだろうか?だとしたら,プラットフォーム的にはそれほど隔たりはないはずなのだが…

いずれにしても,このマシンでいまこのアプリをアンインストールすると再インストールできなくなる可能性はかなり高いような気がする.もちろん,ゼルコバの木の新しいバージョンなら問題なくインストールできるはずだし,新しいバージョンのゼルコバの木は古いバージョンの系図ファイルも読むことができる.新しいユーザでアンインストールしても古いユーザはアプリにアクセスできるというのなら,新しいアカウントで再インストールを試すこともできるが,失敗するとゼルコバの木ベータが走る64ビットの貴重な参照マシンを失うことになりかねない.

インストール時に「すべてのユーザ」ではなく「このユーザのみ」としておけばこのような事態にはなっていなかったと思われるが,デフォルトで「すべてのユーザ」となっているのでそうするのが普通だろう.新しいユーザでアンインストールして古いユーザが使えなくなるとすれば,それはマイクロソフトの「過失」に当たるとは思われるが,インストールに関してはあらゆるところでトラブルが発生しているので,到底安心してお任せという訳にはゆかない…

このマシンにインストールされている版のバージョンが確定した.バージョンは1.9.9.99だが,このバージョン番号を持ったリリースはある事情から複数存在する.そのうち,この版は2012年3月26日にビルドされた版だ.これはインストーラのサイズ4,235,264バイトおよび,ライセンスコードのMNERKEGが一致することにより特定された.なるほど,だいぶ実情が分かってきた.このバージョンはネット上で公開されていたものと思われるので,「公開版」と呼ぶことにしよう.

これまでの所内テストではゼルコバの木ベータないし,32ビット環境で構築されたバージョンは64ビット環境では動かないものと決めつけてきたが,tamo2氏からお送り頂いた実証機によってそうではないということが確証できた.確かにVer1.9.9.99のリリース版は64ビット機にインストールできないが,実際には「実行可能」であることが明らかになった.つまり,インストールするのではなく,直接EXEのアイコンを叩いて起動してやれば何の問題もなく動作する.

結局,マイクロソフトはややこしい(飛び切りスマートな)ことをやりながら,動作するものを動作させないということをやってきただけということになる.妨害行為とまでは呼ばないが,事実上それに近いと言ってはばからない.その結果バカバカしいことでバカバカしいほどの時間の空費が発生しているのだから…ひどい話だね~

これで問題は一つ片付いた.つまり,32ビット版は64ビット機上で動くということが発見された.32ビット版が64ビット機にインストールできないのはやむを得ないとしても,それが「使える」ことが分かればかなり救われる.これで残る問題は「64ビット機で開発した版を32ビット機上で走らせることができるか?」という問題に絞り込まれた.原理的に言えば「動いて当然,動かなければおかしい」ということになるが,いまのところ32ビット機というのは手元にないので確認できない.

ようやく動き始めたが,多重が13件も出ている.1点だけ見てみよう.

image

上の2つのカードの位置(世代)を厳密に一致させなければ多重は解消しない.そのような箇所が13箇所もある.これだけ見ても天皇家系図を多重カードゼロで描画するのが如何に困難かご想像頂けると思う.

コメントを残す

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

CAPTCHA