HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2021
0922
area39fxtgetでタイムスタンプ取得を行うとOSエラーが出る2解決


area39

リンク

2021/9/22(Wed) 07:18:00|NO.93942

すみません、お教えください。
fxtgetを使って複数個のファイルのタイムスタンプを取得しようとするとOSエラーが出てしまい、
うまく取得出来ません

そのエラーが出る状況が再現するスクリプトを提示します。
試しにdir_tvにて、実証しています。


#include "hspext.as" chdir dir_tv sdim flist dirlist flist,"*.*",0 dialog flist notesel flist dim _tsinfo,24 ddim tsinfo,notemax+1 repeat notemax noteget temp,cnt temp = getpath(temp,8) title ""+cnt+"|"+temp+"を調査中..." wait 1 fxtget _tsinfo(cnt),temp loop end



こちらの環境のみでしょうか?
また、この解決策として何かありましたら是非とも教えてください
よろしくお願い致します。

こちらの環境はwindows10です。



この記事に返信する


MillkeyStars

リンク

2021/9/22(Wed) 09:12:26|NO.93944

上記スクリプトは、各ファイルタイムスタンプの情報を一つの配列変数の要素に複数格納しようとしてますが、要素数は 24(1ファイル分)しかありません。

[1ファイルずつ取得し変数へ格納する場合]
各ファイルを一つずつ取得し、一つの変数へ一つのファイル情報を格納する場合
fxtget _tsinfo(0),temp
または
fxtget _tsinfo,temp
です。

[主のやり方の場合] fxtget _tsinfo(cnt),temp
一つの配列変数に複数のファイルスタンプを連続して格納したい場合、ファイル数 x 24要素のメモリを事前に確保してください。
ファイル数が 10ファイル存在する場合は、dim _tsinfo,24 * 10 が必要です。
また、fxtget _tsinfo(cnt * 24),temp となります。



area39

リンク

2021/9/22(Wed) 19:01:42|NO.93949

ありがとうございます

配列のことに失念していました
解決しました!ありがとうございました!!



ONION software Copyright 1997-2023(c) All rights reserved.