お世話になっております。
類似する事例として、以下のトピックがあることを確認しています。
64bit公式検証ツールでは0B30/0B41取得成功するが、Python 3.14ではJVRTOpen=-413となる
上記は JVRTOpen での事例ですが、私の環境では RACE を指定した JVOpen で同様に、公式検証ツールは成功し、Pythonからの呼び出しだけが -413 になります。
また、上記トピックで案内されている「JV-Linkの再インストール」と「利用キーの再発行・再登録」を実施しましたが、現象が継続しているため、別トピックとして質問させていただきます。
環境
- Windows 10 Home 22H2 64bit
- Python 3.14.5 64bit
- pywin32 312
- JRA-VAN Data Lab. SDK 5.0.0 64bit版
- JV-Link 5.0.0 64bit版
- COM ProgID:
JVDTLab.JVLink
Python、pywin32、JV-Linkはいずれも64bitであることを確認しています。また、64bit COMの登録とCOMオブジェクトの生成にも成功しています。
実施した対応
- JV-Link 5.0.0 64bit版をアンインストール
- SDK 5.0.0 64bit版に同梱されたインストーラーから再インストール
- 利用キーを再発行して、64bit版JV-Linkへ再登録
- PCを再起動
以上を実施した後も、現象は継続しています。
取得条件
- DataSpec:
RACE - FromTime:
20240930235959 - ToTime:
20241031235959 - Option:
4(セットアップ)
公式64bit検証ツールの結果
JVInit R/C = 0
JVOpen R/C = 0
ReadCount = 16
DownloadCount = 16
LastFileTime = 20240930143440
TotalReadFilesize = 62030
RecordCount = 16
公式検証ツールでは、対象ファイルのダウンロードを含めて正常に完了しました。
Pythonからの実行結果
公式Pythonサンプルに準じた最小構成で確認しました。
import win32com.client
jv = win32com.client.Dispatch("JVDTLab.JVLink")
print(jv.JVInit("UNKNOWN"))
result = jv.JVOpen(
"RACE",
"20240930235959-20241031235959",
4,
0,
0,
"",
)
print(result)
print(jv.JVClose())
結果は次のとおりです。
JVInit = 0
JVOpen = (-413, 0, 0, "")
JVClose = 0
公式検証ツールの実行直後にPythonから再実行しても、結果は変わりませんでした。
公式検証ツールでは実際に16ファイルをダウンロードできているため、利用キー、通信回線、取得期間、データ種別については正常と考えています。一方、Pythonからの外部COM呼び出しでは、JVInit は成功しますが、JVOpen の段階で -413 になります。
公式検証ツールと外部COMクライアントで、通信または認証処理に違いがありますでしょうか。また、追加で確認できるJV-Link内部ログ、既知の問題、回避策などがあればご教示いただけますでしょうか。
よろしくお願いいたします。