|
kabe
(07/12/02 20:43)
|
|
|
|
kabe です。
071202版を作成しました。
http://acfinder.kabe.info/
デフォルトで薬検CSVを取得するようにしました。
薬検CSV変換機能が少しだけ早くなっています。
Excelファイル取得機能は残しています。
薬検CSVが更新されていれば、download フォルダ内の古いzip,csvファイルを削除します。
なお、11/14のzip,csvは削除されませんので、残っている方は、自力で削除してください。
|
|
|
|
Hidemi Oya
(08/01/15 16:16)
|
|
|
|
kabe さん、こん**は。Hidemi Oya です。
> ところで、ファイルメニューに項目が追加されたせいかどうかは分かりませんが、今まで終了時エラーが出てなかった事務所マシンでも、常に終了時エラーが出るようになってしまいました。
公式サイトのコメントを元に、ちょっとチェックしてみたところ、acfinder.exe を置くフォルダー名の長さによって、終了時エラーが出るかどうかが変わるようです。
事務所マシンでは、c:\xxx\acfinder.exe のように、第1階層下に exe ファイルを置いた場合、第1階層のフォルダー名が 12〜15 文字の場合はエラーが出ました。c:\xxx\yyy\acfinder.exe のように、第2階層下に exe ファイルを置いた場合、第1階層と第2階層のフォルダー名の総文字数(区切りの \ を除く)が 11〜14 文字の場合はエラーが出ます。同様に第3階層下に exe ファイルを置いた場合は、フォルダー名の総文字数(区切りの \ を除く)が 10〜13 文字の場合はエラーです。
ってことで、おそらく、階層数に関わらず、ドライブ名とルート及びフォルダー末尾の \ を除いたパスの文字数が 12〜15 文字はダメってことのようです。ただし、今までの状況から考えると、文字数は環境によって異なる可能性が大です。
また、こんな感じでエラーが出るってことは、たとえば acfinder.exe の起動パスを取得しているようなルーチンにバグが潜んでいる気配がしますね。
|
|
|
|
Hidemi Oya
(08/01/15 21:29)
|
|
|
|
kabe さん、こん**は。Hidemi Oya です。
>ただし、今までの状況から考えると、文字数は環境によって異なる可能性が大です。
自宅マシンも事務所マシンと同じフォルダーに acfinder.exe を置いていますが、終了時エラーは出ません。
> また、こんな感じでエラーが出るってことは、たとえば acfinder.exe の起動パスを取得しているようなルーチンにバグが潜んでいる気配がしますね。
以前いただいたソースを見る限り、Application.ExeName 変数と ExtractFilePath 関数で起動パスを抽出しているので、特に問題はなさそうです。
ってことは、Delphi6 Personal のバグ? Update Pack 2 や RTL アップデート #2, #3 とかは適用してますよね?
|
|
|
|
kabe
(08/01/15 22:53)
|
|
|
|
>Hidemi Oyaさん
kabe です。
> RTL アップデート #2, #3 とかは適用してますよね?
これはやってなかったので、今アップデートしました。
…でも、終了時に EAccessViolation が出るようになり、前より悪化しました。
OOo出力のメニューを削除しても同じです。
ということで、いろいろ試行錯誤してみますが、少し時間がかかりそうです。
|
|
|
|
Hidemi Oya
(08/01/16 0:20)
|
|
|
|
kabe さん、こん**は。Hidemi Oya です。
>…でも、終了時に EAccessViolation が出るようになり、前より悪化しました。
EAccessViolation は、Delphi のランタイムパッケージが出すエラーなので、今までよりは原因究明がしやすそうですが…。IDE 内で実行していればソース内のエラー発生場所で止まりますし、ランタイムパッケージ内などソースコード以外の場所でエラーが発生した場合は CPU ウィンドウが開くので、問題箇所はおおよそ見当がつきます。
それに、EAcessViolation の場合、ほとんどの場合、ヌルポインタアクセスか、メモリ解放後のアクセスですし。
|
|
|
|
 |
 |