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


HSPTV!掲示板


未解決 解決 停止 削除要請

2018
0606
oknowtracertの実行結果のネットワーク経路だけを取得する方法について5解決


oknow

リンク

2018/6/6(Wed) 16:07:53|NO.84559

HSPからtracertコマンドを実行してその結果を変数に代入させ、ネットワーク経路を比較したいので
すが、変数にはルータからの応答時間まで入っており、そのルータからの応答時間まで比較してしま
います。
ルータからの応答時間を変数の中から削除する方法はありませんか。
誰か分かる方、教えてください。



この記事に返信する


KA

リンク

2018/6/6(Wed) 18:21:10|NO.84560

ルーターからのアンサーを計測しているので不可能です。



Velgail

リンク

2018/6/6(Wed) 19:22:00|NO.84561

>ルーターからのアンサーを計測しているので不可能です。

できないわけ無いでしょうが。変数に標準出力文字列が入った時点で、文字列に編集を行って自分の欲しいデータを取得するのは「プログラマーの仕事」!

サンプルソースは以下の通り。


; パイプを使用して、コマンドラインを実行するサンプル ; exec命令と異なり実行の終了と結果を受け取ることができます。 ; #include "hspext.as" cmd="tracert dmm.com" sdim ln,4096 sdim buf,32000 mesbox buf,640,200,1:obj_edit=stat pipeexec buf,cmd,1 if stat : dialog "実行できませんでした" : end mes cmd+" を実行中..." repeat pipeget ln if stat=0 : break objprm obj_edit,buf await 10 loop notesel buf for i,4,notemax noteget a,i if(a==""):_break b=strmid(a,0,4)+strmid(a,32,strlen(a)) noteadd b,i,1 wait 0 next objprm obj_edit,buf mes "実行を終了しました" stop



KA

リンク

2018/6/6(Wed) 19:50:24|NO.84562

>>標準出力文字列が入った時点

それ、「3回試行したルーターの応答を含む時間」の
結果だけど?

スレ主が、どういうパラメータ設定なのかも不明です。



oknow

リンク

2018/6/6(Wed) 20:15:07|NO.84563

KAさん、Velgailさん、早々のご回答ありがとうございます。

Velgailさんのおっしゃる通り、今後は欲しいデータを私自身の力で取得するよう心掛けます。

KAさん、いち早くご回答いただきありがとうございました。
また、質問の仕方が拙く申し訳ありません。私はHSPでtracertを実行し、その結果を変数に代
入したところ、その変数に3回のルータからの応答時間が含まれていて、そのルータからの
応答時間を変数から取り除く方法を探していました。



Velgail

リンク

2018/6/6(Wed) 20:22:45|NO.84564

あ〜 そっちか。
そっちも簡単よ。
strmidとinstrでアスタリスクじゃないことを確認の上でmsまでを取る。
平均値しか取れない? 誤差率を許容するためにpingを更にかけるとか。

(数学だ)



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