解決している件をしつこく追いまわして申し訳ないのですが、追記です。
リピートで10000回回して時間測定してみました。
HSP3.2で実行ファイルを作って、各関連付けして測定
;1. 8.5ms〜9.5ms
if peek(file,0)='"' : getstr file, file, 1, '"'
if peek(file,0)=' ' : getstr file, file, 2, '"'
;2. 8.5ms〜9.5ms
if peek(file,0)='"' : getstr file, file, 1, '"'
if peek(file,1)='"' : getstr file, file, 2, '"'
;3. 11.5ms〜12.5ms ;リピート使ってますから…orz
repeat 2
if peek(file,cnt)='"' : getstr file, file, cnt+1, '"'
loop
;4. 19.5ms〜20.5ms ;時間倍かかってますが…orz
file=strtrim(file,3) ;file=strtrim(file,1)でも可
if peek(file,)='"' : getstr file, file, 1, '"'
1か2の記述のほうが速度が速いようなので、
素直に記述したほうがいいようです。
Windows2000+SP4、WindowsXPPro+SP3で確認済みの
HSP3.1以降3.2にも適用できる方法として
file=dir_cmdline
if peek(file,)='"' : getstr file, file, 1, '"'
if peek(file,)=' ' : getstr file, file, 2, '"'
;以下の二つもやっていることはほぼ一緒です。
;if peek(file,0)='"' : getstr file, file, 1, '"'
;if peek(file,1)='"' : getstr file, file, 2, '"'
if file!"":goto*get_data
dialog "jpg",16
file=refstr
*get_data
;dialog file;ファイルパス確認
bsave dirinfo(0)+"\\file.txt",file,strlen(file)
picload file
stop
をお勧めします。
Vistaとか7とかはどうなんでしょうね?