Windows11対応とライセンス更新の不具合について
商品スタッフIIについてユーザ様からの報告があり、弊社側で調査しました。問題と当面の結論・解決をお知らせいたします。
手短かに言えば以下の二点になります。
- Windows10→Windows11アップグレード版で動作しない。
Windows11のクリーンインストール版でしか動作しません。最初からWindows11がインストールされているもの、あるいはWindows10をいったん全削除してWindows11をインストールしたものをお使いください。 - ライセンス更新ができない。あるいは、ライセンス設定画面の「ライセンス更新実行」ボタンをクリックするとハングアップしてしまう。
これは弊社側の問題として解消されました。商品スタッフIIのプログラム更新などは不要です。
以下に詳細を記述します。これ以外の問題が発生する場合は、弊社サポートまでご連絡ください。
Windows10→Windows11アップグレード版では動作しない
ユーザ様からこの報告があり、弊社でも試行しましたが、どうしても動作させることができませんでした。原因と思われるものは、商品スタッフIIがSWT(Standard Widget Toolkit)というものを用いており、これがWindows11アップグレード版では正常に動作しなくなるようです。
つまり、アップグレード版の何らかの機構がクリーンインストール版とは異なるために動作の違いがでてしまうようで、おそらくはWindows11がWindows10に上書きインストールされる際に「以前のゴミ」をきちんと除去していないものと思われます。想像の域を出ませんが、そうとしか考えられません。
現在のところ、アップグレード版で動作させることは弊社としては断念しています。クリーンインストール版をお使いください。最初からWindows11がインストールされているPCか、あるいは、いったんWindows10を全削除してからWindows11をインストールしたPCということになります。
ライセンス更新ができない問題
本年(2025年)8月初頭に弊社サーバを変更しましたが、その際に問題が発生した可能性があります。具体的には、ライセンスがあるにも関わらず商品スタッフII側のライセンス表示が更新されなかったり、ライセンス設定画面の「ライセンス更新実行」ボタンをクリックすると端末がハングアップしてしまう。あるいは、「プログラム更新」ボタンをクリックするとやはりハングアップしてしまうなどです。
※商品スタッフIIサーバが常時ネット接続している場合は、一日に一度ライセンス更新を自動的に行っています。「ライセンス更新実行」ボタンが必要な理由は、ふだんはサーバがネット接続しておらず、一時的に端末(サーバ兼用の場合もあります)をネット接続し、そこでライセンス更新をしたい場合のみです。
商品スタッフIIでは、基本的にサーバと端末間の通信が主であり、例外的なのが、弊社側サーバ「https://lic.cm55.com」との通信です。これは、ライセンス状態の取得とプログラムの更新のために行われます。これがハングアップする状況が多くなっていましたが、これも手短に言えば、弊社側のサーバの設定変更により解消したと考えられます。ユーザ様側での商品スタッフIIプログラムの更新などは必要ありません。
この理由を、少々専門的になりますが、以下に説明します。
商品スタッフIIが弊社側サーバと通信する際には、httpsという暗号化通信を行います。ですから、たとえ通信路が盗聴されていても安全に通信ができます。これは、他の様々なウェブサイトにブラウザでアクセスする場合と同じです。現状この通信方式として世界的には、TLSv1.2、TLSv1.3の2つの方式が混在しています。しかし、商品スタッフIIはTLSv1.2の時代に制作したものなので、TLSv1.3では通信が失敗する確率が高いのです(成功する場合もあり)。そして、これまでは次のような状態でした。
- 8月初頭以降に設定した弊社サーバは、1.2と1.3のどちらもサポートする(以前は1.2、あるいはより古い1.1, 1.0だったと思われる)
- java自体は、1.2と1.3のどちらもサポートするものが多い(古いバージョンは1.2のみ)
両者が1.2/1.3の両方ともサポートする場合は1.3で通信してしまい、このため通信が失敗するケースが多かったのです。1.3の場合には、特に「通信が終了してもソケットをクローズしない場合がある」という仕様になっており、現状の商品スタッフIIプログラムでは正常動作しないケースが見られるようになりました。今回、以下のように変更しました。
- 弊社サーバがサポートするのは1.2のみ
- java自体は、1.2と1.3のどちらもサポートするものが多い
このように変更したため、通信は必ず1.2で行われます。しかし、1.2が古いとは言っても世界的にはまだ1.2が主流と言えます。決してセキュリティ的に劣るわけではありません。
このような変更のため、ユーザ様側でのJavaの変更や商品スタッフIIのプログラム更新などは一切ありません。