スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 自前の圧縮ソフトを使う | トップページ | 性能の再測定とか »

VS2017の不具合が悲しい

昨日書いた様に、MasterReversiのレジストユーザー向けに開発してきたEdaxBoardとAVX2版MasterReversiは、自前の圧縮ツールで圧縮し、それ用の専用解凍ツールでなければ、それを解凍して利用できない形で配布する。なので、今日は、そのツールを作っていたのだが。

とりあえず、自前の圧縮ツールなんて、そんなに簡単に作れるのか? という声も聞こえてきそうなので、最初に書いておくと、何度か書いてきた事があった筈なのだが、MasterReversiのBookデータなんかは、自前の圧縮ルーチンで圧縮してある訳だ。

つまり、作者的には、既に、自前の圧縮ルーチンは持っていて、更に言えば、MasterReversiに同梱されているデザイン用の画像/音声データも圧縮してあるのだが、これらのファイルを圧縮する為に、作者的には、MasterReversiとは別に、非公開の自前圧縮ツールを作成して使ってきていた訳だ。

と、いう事なので、作者的には、既に、自前圧縮ツールは持っていて、そのツールを使うと、圧縮すると同時に、パスワードみたいなモノも埋め込めるので、圧縮ツールについては、それを使えば良い状況だった訳だ。

で、MasterReversiのレジストキーというのは一種類しかない訳ではなく、何万通りでも異なるモノが存在可能になっていて、実際、今までレジストキーの購入者に発行してきたレジストキーの個数というのも、半端ではない訳だ。

なので、MasterReversiのレジストキーというのは、実際の所、MasterReversiのバイナリに埋め込まれたりはしていない訳だ。

つまり、いくらバイナリエディタ等でMasterReversiの実行ファイルを見ていっても、レジストキーは見つからない訳なのだが、それでは、どうやってレジストキーをレジストキーならしめているのか、というと、正しいレジストキーには一定のルールがあって、そのルールに従った文字列であれば、レジストキーとして認める格好になっている。

で、少しヒントを出しておくと、入力された文字列がルールに従っているかどうかというのは、その文字列をルールに従って加工していった結果出力される文字列が、正しい文字列になるかどうかで判定している。

なので、結局の所、入力されるレジストキーというのは、最終的には何等かの文字列になる訳なので、この文字列を前述の自前圧縮ツールのパスワードという事にしておけば、正しいレジストキーが入力された場合にのみ、解凍を許可するツールを作成する事が出来る訳だ。

と、いう事で、既に、自前の圧縮ツールの手持ちがある作者的には、今日の時点で、既に、プレミアムアイテムに同梱する予定の解凍ツールの作成は出来たのだが、これは、Visual Studio Community 2017を使って、ダイアログベースのMFCアプリとして作成した。

で、作者的には、EdaxBoardとMasterReversiのAVX2版は、やはり、このVisual Studio Community 2017を使って開発してきていて、かつ、特に問題なく利用できていたので、今日作成したツールについても、何ら問題なく作成できるだろう、と、思っていたのだが、実際の所、Visual Studio Community 2017というのは、新規にダイアログベースのMFCアプリを開発しようとすると、使いものにならない状態だった訳だ。

具体的には、リソースファイルを変更すると、それだけでビルド出来なくなるので、作者的には、まず最初に、バージョン情報を入力したのだが、それだけで、ビルドできなくなった訳だ。

で、この問題については、ネットを検索していると、解決策を提示してくれているブログがあったので、その解決策に従う事で、何とか、ビルドは可能になったのだが、リソースファイルを弄る度に、手作業でリソースファイルの内容を変更しなければビルドできない状況だ。

更に、新しいダイアログを作成し、それから新規クラスを作ろうとすると、これも不可能な状況になっていて、ネットで検索すると、この問題も昨年の内から、既に大問題になっていた様なのだが、未だに解決されていない。

で、この問題については、作者環境では、ネットに提示されていた解決策では解決されなかったので、作者的にはMFC用のウイザードを使う事を断念した。

つまり、手作業で新しいクラスを作成し、MFC用のマクロなんかも、手作業でソースファイルに入力して行く事で、何とか、新しいダイアログ用のクラスを動作可能にした訳だ。

と、いう事で、Visual Studio 2017は、現状、MFCアプリを開発しようとしてもマトモに使えない訳なのだが、より問題なのは、上記の様な問題は昨年中に発覚してネット上では色々と問題視されているにも関わらず、今年に入って既に4ヶ月が過ぎようとしている今現在でも、これらの大問題が放置されている、という事だ。

まあ、作者的にも、現行のOSX版Mirror-DTCサーバーでは、初期設定ダイアログを非表示状態で起動出来ない、という、人によっては大問題となる不具合がある事を承知していながら、未だにこの不具合の修正はしていない。

何故なら、作者的な使い方からすれば、これは問題にはならないし、Mirror-DTCはフリーソフトなので、頑張って不具合を修正しても、お金にはならないからだ。

同様に、マイクロソフト的にも、既に、Windowsは殆どお金になっていないだろう事を鑑みれば、社内的には、それ上で動作するアプリ専用の開発ツールなんてものの不具合を修正するのは労力の無駄、扱いされている可能性も高い訳だ。

と、いう事なので、現状のVisual Studio 2017には、上記した様な、とんでもない不具合があるのだが、より問題なのは、それらの不具合が何か月も前からネット上で問題視されてきているにも関わらず、未だに、全く修正されずに放置されている現状かもしれない訳だ。

つまり、この現状というのは、Windowsの実質的な終焉を意味している、と、解釈できなくもない訳なので、作者でなくても、Windows3.1の頃からWindowsを使い続けてきた様な人にしてみれば、悲しくなってしまうのも致し方ないかもしれない訳だ。

« 自前の圧縮ソフトを使う | トップページ | 性能の再測定とか »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/66622202

この記事へのトラックバック一覧です: VS2017の不具合が悲しい:

« 自前の圧縮ソフトを使う | トップページ | 性能の再測定とか »

2018年11月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google