複数ソフトウェア起動させるのが面倒なのでbatファイルから起動したら製品スキャンが動作しなかった。
起動する前にcdでAssistantSeikaのインストールフォルダに行ったらうまくいった。
バッチファイルで起動できない、バグだ、と騒ぐ人が居るのでこれ(この資料)を追加しました。
どうしてもバッチから起動する必要がある場合は、インストールフォルダへcdコマンドで移動してAssistantSeika.exeを起動するか、
AssistantSeikaに同梱されているSeikaCtl.exeを使って起動します。
以下は記述例です。
@echo off chcp 65001 SET ASPATH="D:\Program Files\510Product\AssistantSeika" SET SCPATH="D:\AssistantSeika20230901c\SeikaCtl" rem ****** 音声合成製品起動処理をここに記述 rem ****** 音声合成製品起動完了確認処理をここに記述 rem ****** AssistantSeikaがまだ起動していなければ起動を実施する。 %SCPATH%\SeikaCtl waitboot 5 if ERRORLEVEL 8 ( echo AssistantSeika起動開始します。 %SCPATH%\SeikaCtl boot %ASPATH% if ERRORLEVEL 8 ( echo AssistantSeika起動に失敗しました。終了します。 PAUSE EXIT /B 8 ) %SCPATH%\SeikaCtl waitboot 60 ) rem ****** AssistantSeikaの製品スキャンボタンを押す。 echo 製品スキャン中 %SCPATH%\SeikaCtl prodscan if ERRORLEVEL 8 ( echo 製品スキャンに失敗しました。終了します。 PAUSE %SCPATH%\SeikaCtl shutdown EXIT /B 8 ) rem ****** AssistantSeikaのHTTP機能を起動する ※必要な場合 %SCPATH%\SeikaCtl boothttp if ERRORLEVEL 8 ( echo HTTP機能の起動に失敗しました。終了します。 PAUSE %SCPATH%\SeikaCtl shutdown EXIT /B 8 ) EXIT /B 0
AssistantSeikaは作業フォルダにあるDLL等の参照ができることを期待して動作しようとします。
そして、インストールされたフォルダを作業フォルダとして期待しています。インストールで作成されたショートカットのプロパティを確認すると作業フォルダにインストールフォルダが指定されている事がわかります。