バージョン情報を取得することに興味はありません。私がやりたいことは、自分のアプリケーションが正規版の Windows でのみ実行され、海賊版では実行されないことを確認することだけです。Windows はこれを判断するためにいくつかのトリックを使用しますが、いくつかの制限はありますが、海賊版を引き続き実行できます。
では、アプリケーションが正規の正規の Windows バージョンにインストールされているかどうかを確認する方法はありますか? (少なくともVista以上。)
Microsoft は、ユーザーが検証されていない、または違法なバージョンのオペレーティング システムを使用することを妨げていません。したがって、そのようなバージョンでもアプリケーションをブロックする理由はありません。しかし、アプリケーションが不正なバージョンであることを認識し、Windows のバージョンが検証されていないことをユーザーに警告する必要があります。たぶん彼は忘れていたのかもしれませんし、検証したくないのかもしれません。これには多くの理由が考えられますが、私はそれらをブロックしたくありません。Windows バージョンの問題を認識させるだけです。
また、誰かが有効でないバージョンの Windows を使用している場合、それが商用製品である場合は、自分のソフトウェアのより厳密な検証チェックを行いたいと思うかもしれません。私の無料製品では、1 日に 1 回だけ表示される煩わしいポップアップが欲しいだけです。
検証されていない Windows バージョンの主な問題は、追加のスパイウェアやその他のマルウェアが含まれている可能性があり、必要なすべての更新プログラムを取得できない可能性があることです。これらの Windows バージョンは、検証済みの Windows バージョンよりも保護が弱くなります。私のアプリケーションのいくつかは機密データを使用しているため、この機密データがマルウェアによって漏洩することは望ましくありません。
さらに、海賊版ソフトウェアは、無料の代替ソフトウェアにとって有害であると考えています。Linux と FreeBSD は、徘徊しているすべての海賊版 Windows バージョンがなければ、もっと人気があったでしょう。海賊版ソフトウェアを使用する人は、そもそも製品を購入する可能性は低いですが、代わりに無料の代替品を使用することをお勧めします. 海賊版ソフトウェアは Microsoft に多少の損害を与えますが、人々がこれらの商用製品に接続し続けるため、Free コミュニティにはさらに多くの損害を与えます...