[ 掲示板に戻る ]

過去ログ閲覧モード

IESETDATAの使い方? / Nagatani
いつも質問ばかりで申し訳ありません。

楽天の「最安ショップを見る」を押したいのですが・・・・
IELINK(IE,"最安ショップを見る")
IESetData(IE,True,"productprice","最安ショップを見る")
IESetData(IE,True,"","最安ショップを見る")

上記方法では押せないようです。
要素の検査では
<span class="productprice"></span>

また、BETWEENSTRを使うときに「”」の対処方法を教えてください。
例)BETWEENSTR(BODY,"<span class="productprice">","</span>")

以上よろしくお願いいたします。

No.317 2014/10/25(Sat) 18:19:23

Re: IESETDATAの使い方? / むっちー
もっといい方法があるかもしれませんが、少し考えてみた。
-----------------------------------------------------------------------
IE = CreateOleObj("InternetExplorer.Application")
IE.visible = True
IE.Navigate("http://search.rakuten.co.jp/search/mall/-/560029/")
busyWait(IE)
elements = IE.document.getElementById("ratArea").getElementsByClassName("product")
//最安ショップを見るのリンク先の一覧を表示
for i = 0 to elements.length-1
print elements.item[i].childNodes.item[0].href
next
sleep(5)
//上から1つ目の「最安ショップを見る」を押す(リンクに移動)
IE.Navigate(elements.item[0].childNodes.item[0].href)


Procedure busyWait(IE)
repeat                        
sleep(0.1)                       
until !IE.busy and IE.readyState = 4
FEnd
------------------------------------------------------------
BETWEENSTRは特殊文字を使えば回避できるのかな
参考(http://canal22.org/control/specialchar/
--------------------------------------------------------------
BETWEENSTR(BODY,"<span class=<#DBL>productprice<#DBL>>","</span>")
--------------------------------------------------------------

参考になれば幸いです。

No.319 2014/10/25(Sat) 22:28:23

Re: IESETDATAの使い方? / Nagatani
ありがとうございました。
理解はできていませんが「最安ショップを見る」を押すことができました。
ダブルクォーテイションは<#DBL>でやったつもりでしたが再度挑戦してみます。

No.320 2014/10/25(Sat) 22:55:25
サブフォルダの数を調べたい。 / いとう
お世話になります。
あるフォルダの中のサブフォルダの数を調べたいのですが、GETDIR_FILES[ ]ではファイル数は調べられてもフォルダは数えられませんでした。
良い方法はありませんか?
アドバイスよろしくお願いします。

No.313 2014/10/25(Sat) 00:09:32

Re: サブフォルダの数を調べたい。 / Liners
ファイル指定: ワイルドカード(*, ?) によるファイル名指定 "\" を指定するとディレクトリ名の取得 ※ヘルプより
No.314 2014/10/25(Sat) 01:00:07

Re: サブフォルダの数を調べたい。 / いとう
回答ありがとうございます。
無事出来ました。

No.318 2014/10/25(Sat) 21:18:00
ユーザエージェントの偽装 / ミュウ
ユーザエージェントの偽装を行いたく、色々調べたところ、以下の方法でできることがわかりました。
ここで疑問があるのですが、
@リファラーも変更することは可能なのでしょうか。
APOSTとは何でしょうか(目的が偽装ですが、ここの項目は関係ありますでしょうか)

回答頂けますと幸いです。


ーーーーーーー引用−−−−−−−−−−−−−−−−−−−
strUserAgent = "UWSC " + GET_UWSC_VER;
strURL = "http://www.ugtop.com/spill.shtml";
httpHeader = "User-Agent: " + strUserAgent + "<#CR>";
bPostData = StrConv("NO=0&KUBUN=VBA&MEMO=TEST+Ken3+4649", vbFromUnicode)
objIE = CreateOleObj("InternetExplorer.Application");
objIE.visible = TRUE;
objIE.Navigate(strURL, 0, NULL, bPostData, httpHeader);
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー

No.289 2014/10/19(Sun) 10:21:02

Re: ユーザエージェントの偽装 / stuncloud
> @リファラーも変更することは可能なのでしょうか。
可能です
UserAgentと同様にヘッダのRefererを指定してください

> APOSTとは何でしょうか(目的が偽装ですが、ここの項目は関係ありますでしょうか)
リクエストを送る際のメソッドの一つです
POSTはサーバーにデータを送りたい場合に使います
ほかにはGET(データを取得する)など、数種類のメソッドが存在します
上記例で言うとbPostDataがその辺りの動きに関係します
bPostDataが送りたいデータになります
Navigate()ではbPostDataが空であればGET、何かデータがあればPOSTするようです

POSTが使われるのはformタグの入力値を送る場合などなので
そうでないのなら今回は関係ないでしょうからbPostDataは空でいいと思います

No.290 2014/10/20(Mon) 10:23:20

Re: ユーザエージェントの偽装 / ミュウ
>stuncloud さん
回答ありがとうございます。解決して、refererも送ることが出来ました。
毎回毎回丁寧に回答いただき、大変ありがとうございます。

No.316 2014/10/25(Sat) 15:03:13
COM_Errorクライアントから切断されました / Nagatani
いつもお世話になります。フリー5.0版・WINDOWS7の環境下で
下記のように検索条件を入力してWebを渡り歩いた場合

////////////////////////////////////////////////
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://kakaku.com/")
IESETDATA(IE,"TXXZZXX","query")
IESETDATA(IE,True,"search","alt=検索")
BusyWait(IE)
sleep(2)
IESETDATA(IE,True,"tag=img","spacer.gif")
BusyWait(IE)
SLEEP(2)

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
中略
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
IE.QUIT
///////////////////////////////////////////

「COM_Error起動されたオブジェクトはクライアントから切断されました
 27行目:IE.QUIT」というエラーになります。
 上記の場合中略部分も正常に動作せず下記のように直接サイトを開けば
 正常に動作します。

/////////////////////////////////////////
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://kakaku.com/item/K0000000000000/?lid=ksearch_kakakuitem_image")
BusyWait(IE)
SLEEP(2)
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
中略
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
IE.QUIT
///////////////////////////////////////////

どのように対処すればいいかアドバイスをよろしくお願いいたします。

No.304 2014/10/23(Thu) 21:55:38

Re: COM_Errorクライアントから切断されました / なま
おそらくIE11ですよね?
http://www.uwsc.info/faq.html#n45
これ関連だと思いますが、IE.QUITでIEを終了させることが目的であればCTRLWINで閉じるのが楽かと。

//exec("taskkill /IM <#DBL>iexplore.exe<#DBL>") という手もありますが、ちと強引すぎるかな……

No.309 2014/10/24(Fri) 16:42:17

Re: COM_Errorクライアントから切断されました / Nagatani
ありがとうございました。
BusyWait(IE)を下記のように修正することで無事解決いたしました。

////////////////////////////////
/// BusyWait
DEF_DLL SendMessageA(Hwnd, Long, Long, Dword): bool: user32
CONST WM_ACTIVATE = $06

Procedure BusyWait(ie)   // 更新待ち処理
Const TIME_OUT = 90
Tm = Gettime()
Repeat
Fukidasi("BusyWait Now")
Sleep(0.2)
IF GetTime() - Tm > TIME_OUT THEN ExitExit
Until(! IE.Busy) and (IE.ReadyState=4)
SendMessageA(ie.Hwnd, WM_ACTIVATE, 0, 0)
Fend

No.312 2014/10/24(Fri) 20:33:45
ルートを使った計算式 / みこと
√を使った計算式を書きたいのですが、どうしたらよいでしょうか。
よろしくお願いいたします。

No.298 2014/10/22(Wed) 22:31:57

SQRT / なま
ヘルプが読めないのですか?
No.299 2014/10/23(Thu) 01:19:35

Re: ルートを使った計算式 / ミリアム
√、とはヘルプファイルのどこにも書いていないと思うのですが。



SQRT(65536) といった風にすると√が求まりますよ。
ヘルプファイルのスクリプト関数>数学関数の項に「平方根」として書いてあります。

No.300 2014/10/23(Thu) 15:08:49

Re: ルートを使った計算式 / なま
確かに√とは何処にも書いてなかったと思いますが、平方根の数学での表記方法が√であることは中学校で習うと思います。
日本語の読み方からレクチャーするのは流石に人が良すぎるのでは?

No.301 2014/10/23(Thu) 17:12:38

Re: ルートを使った計算式 / しろまさ
> 日本語の読み方からレクチャーするのは流石に人が良すぎるのでは?
それは、なまさんの主観。レクチャーも含めて答えてくれた親切な人がミリアムさん。
答える答えないは当人の自由です。が、

> ヘルプが読めないのですか?
> √、とはヘルプファイルのどこにも書いていないと思うのですが。
嫌味の言い合いはやめませんか? 答えたくなければ書き込まなければよいだけです。

質問者の調査不足は認めますが、1度目であれば調べ方を教える必要もあるかと思います。


ps全然関係ない話ですが、半角カタカナが投稿禁止語句になるみたいですね。この掲示板。

No.308 2014/10/24(Fri) 11:30:49

Re: ルートを使った計算式 / なま
嫌味の言い合いというか三角方向ですよね……
実際、ネットワーク経由などヘルプ読めない環境もありますので、あれを嫌味と捉えるのは早計だと思いますが。
//嫌味を全く込めなかったとは言いません。

>答える答えないは当人の自由です。
そうですね。ですから自分は最低限の回答だけしました。

>答えたくなければ書き込まなければよいだけです。
ヘルプ読め、と書き込む自由もあるのでは?

No.310 2014/10/24(Fri) 17:09:42

Re: ルートを使った計算式 / しろまさ
> ヘルプ読め、と書き込む自由もあるのでは?
同意。まあ書き方の問題ですよね。

ヘルプファイルのスクリプト関数>数学関数の項 SQRT() を参照。
次からはヘルプファイルを読んで解らない場合に質問しましょう。

文章として残すにはこんな感じですかね。(会話では絶対こんな言い方しません。
あんまりトゲトゲやってると、便所の落書きって言われてしまいますから。

No.311 2014/10/24(Fri) 17:23:13
UWSCでXMLHttpRequestを使うには? / むっちー
UWSCでXMLHttpRequestを使うにはどのようにしたらいいですか!?
ブラウザ(IE)上でconsole.log(window.XMLHttpRequest);を実行するとtrueになるのですが、以下のようにすると例外エラーが発生します。
IE = CreateOleObj("InternetExplorer.Application")
Print IE.XMLHttpRequest
WSHやUWSCではXMLHttpRequestを使用できないのでしょうか?
分かりにくい質問ですがご教授よろしくお願いいたします。

No.291 2014/10/21(Tue) 09:01:04

Re: UWSCでXMLHttpRequestを使うには? / なま
IEオブジェクトは厳密にはWindowオブジェクトとは別物のはずなので……
IE上でなくても良いなら、下記のような方法があります。
XMLHttpRequest= CreateOleObj("MSXML2.XMLHTTP")
「MSXML2.XMLHTTP」の部分は「MSXML2.XMLHTTP.6.0」のようにバージョン指定が可能です。

//自分の場合はWinHttpRequestを使いますが……

No.292 2014/10/21(Tue) 10:33:42

Re: UWSCでXMLHttpRequestを使うには? / stuncloud
IEの中で使いたいという話でしたら…
------------------------------------------------
textblock js
var uri = 'http://foo.bar/';
var req = new XMLHttpRequest();
req.open('GET', uri, false);
req.send();
alert(req.status);
endtextblock

ie.Document.Script.execScript(js, "JavaScript")
------------------------------------------------
こんな感じで出来ました
肝心の部分はJavaScriptで書かなくてはいけませんが

No.293 2014/10/21(Tue) 14:50:26

Re: UWSCでXMLHttpRequestを使うには? / なま
一応、stuncloudさんに倣ってサンプルも書いときますね。

xhr = CreateOleObj("MSXML2.XMLHTTP")
uri = "http://foo.bar/"
xhr.open("GET", uri, false)
xhr.send()
print "HTTP STATUS=" + xhr.status

No.294 2014/10/21(Tue) 16:23:13

Re: UWSCでXMLHttpRequestを使うには? / むっちー
なまさん回答ありがとうございます。
 MSXML2.XMLHTTPやWinHttpRequestを使おうと思ったのですがHTMLを直接パースできずDOMParserなどを使わないといけないと感じました。また、MSXML2.XMLHTTPだとOSに依存してしまうような気がしました。しかし、MSXML2.XMLHTTPやWinHttpRequestを使えばブラウザを開かずに操作できるのですごくメリットはあるのですが今の自分には使いこなせそうにありません。なまさんのようにすばらしいプログラムを作れるように頑張ります。サンプルまで作っていただいて本当にありがとうございます。
stuncloudさん回答ありがとうございます。
 上記のようにすればブラウザ上でJavaScriptを動かすことができるのですね。上記を参考にして自分なりにスクリプト(以下)を作ってみました。まだまだ初心者なので知識を増やしてstuncloudさんのようなすばらしいプログラムが書けるようにがんばります。サンプルまで作っていただいて本当にありがとうございます。
------------------------------------------------
textblock js
function xhrStart(method,url,data,requestHeader,callback){
var xhr = new XMLHttpRequest();
xhr.onload = function(){
callback(xhr.response);
}
xhr.open(method,url);
if(requestHeader !== null)
for(key in requestHeader)
xhr.setRequestHeader(key,requestHeader[key]);
xhr.responseType = "document";
xhr.send(data);
}

var callback1 = function(){
//処理
}
xhrStart(method,'http://foo.bar/',null,null,callback1);
endtextblock

ie.Document.Script.execScript(js, "JavaScript")
------------------------------------------------

No.295 2014/10/21(Tue) 17:01:22

Re: UWSCでXMLHttpRequestを使うには? / むっちー
すいません。少し間違えていたので修正しました。
------------------------------------------------
textblock js
function xhrStart(method,url,data,requestHeader,callback){
var xhr = new XMLHttpRequest();
xhr.onload = function(){
callback(xhr.response);
}
xhr.open(method,url);
if(requestHeader !== null)
for(key in requestHeader)
xhr.setRequestHeader(key,requestHeader[key]);
xhr.responseType = "document";
xhr.send(data);
}

var callback1 = function(document){
var title = document.getElementsByTagName('title')[0].innerHTML;
console.log(title);
}
xhrStart('GET','http://foo.bar/',null,null,callback1);
endtextblock

ie.Document.Script.execScript(js, "JavaScript")
------------------------------------------------

No.296 2014/10/21(Tue) 17:23:41

Re: UWSCでXMLHttpRequestを使うには? / なま
参考までに、自分がいつも使うスクリプトの雛形を晒してみます。
元ネタはVBscriptで実装してましたね、確か。
//----
Http = CreateOleObj("WinHttp.WinHttpRequest.5.1")
reqURL = "http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi"
Http.Open("GET",reqURL,False)
Http.Send()

Stream = CreateOleObj("ADODB.Stream")
Stream.Open
Stream.Type = 1 //バイナリ指定
Stream.Write(Http.ResponseBody) //HTTP Requestのレスポンスを書き込む。
Stream.Position = 0 //ストリームの現在地を先頭へ戻す。
Stream.Type = 2 //テキスト指定
Stream.Charset = "_autodetect" //文字コード指定。あらかじめ判ってれば"utf-8"のように指定すると良し。
HtmlText = Stream.ReadText() //テキスト書き出し
Stream.Close
print HtmlText //HTMLソースが出力されます。

Htmlfile = CreateOleObj("htmlfile")
Htmlfile.close() //初回なので不要だが、一応クローズして初期化。
Htmlfile.write(HtmlText) //htmlfileオブジェクトにソースを書き込み。
//htmlfileオブジェクトはHTMLdocumentオブジェクトと等価と考えて良さそうです。

//こんな感じでDOMアクセス可能です。
print Htmlfile.getElementsByTagName("HTML").item[0].outerHTML
//----

htmlfileに突っ込む欠点はHTML5非対応ってあたりですねー
HTMLではなく、XMLをパースしたいのであれば、MSXML2.DOMDocumentとか使うのが良いんじゃないかと思います。
//自分は必要になったことがないので、適当なサンプル出せませんが……

No.297 2014/10/21(Tue) 19:05:09
SENSOR関数の使い道 / ミリアム
前から思っていたのですが。
SENSOR関数って何に使う物なんでしょうか?

自分はWindows8.1なのですが、使ってみても何も起きないです。
タブレットPCとかだと反応するんでしょうか。

以下がSENSORの取得項目の一覧です。(微妙に邪魔ですみません)
皆さんは何か表示されますか?

(ちょっと編集しました)
----------------------------------------------------

OPTIONLOGFILE=1
PRINT "人が存在した場合にTrue:" + SENSOR( SNSR_Biometric_HumanPresense )
PRINT "人との距離(メートル):" + SENSOR( SNSR_Biometric_HumanProximity )
PRINT "静電容量(ファラド):" + SENSOR( SNSR_Electrical_Capacitance )
PRINT "電気抵抗(オーム):" + SENSOR( SNSR_Electrical_Resistance )
PRINT "誘導係数(ヘンリー):" + SENSOR( SNSR_Electrical_Inductance )
PRINT "電流(アンペア):" + SENSOR( SNSR_Electrical_Current )
PRINT "電圧(ボルト):" + SENSOR( SNSR_Electrical_Voltage )
PRINT "電力(ワット):" + SENSOR( SNSR_Electrical_Power )
PRINT "気温(セ氏):" + SENSOR( SNSR_Environmental_Temperature )
PRINT "気圧(バール):" + SENSOR( SNSR_Environmental_Pressure )
PRINT "湿度(パーセンテージ):" + SENSOR( SNSR_Environmental_Humidity )
PRINT "風向(度数):" + SENSOR( SNSR_Environmental_WindDirection )
PRINT "風速(メートル毎秒):" + SENSOR( SNSR_Environmental_WindSpeed )
PRINT "照度(ルクス):" + SENSOR( SNSR_Light_Lux )
PRINT "光色温度(ケルビン):" + SENSOR( SNSR_Light_Temperature )
PRINT "力(ニュートン):" + SENSOR( SNSR_Mechanical_Force )
PRINT "絶対圧(パスカル):" + SENSOR( SNSR_Mechanical_AbsPressure )
PRINT "ゲージ圧(パスカル):" + SENSOR( SNSR_Mechanical_GaugePressure )
PRINT "重量(キログラム):" + SENSOR( SNSR_Mechanical_Weight )
PRINT "X軸加速度(ガル):" + SENSOR( SNSR_Motion_AccelerationX )
PRINT "Y軸加速度(ガル):" + SENSOR( SNSR_Motion_AccelerationY )
PRINT "Z軸加速度(ガル):" + SENSOR( SNSR_Motion_AccelerationZ )
PRINT "X軸角加速度(度毎秒毎秒):" + SENSOR( SNSR_Motion_AngleAccelX )
PRINT "Y軸角加速度(度毎秒毎秒):" + SENSOR( SNSR_Motion_AngleAccelY )
PRINT "Z軸角加速度(度毎秒毎秒):" + SENSOR( SNSR_Motion_AngleAccelZ )
PRINT "速度(メートル毎秒):" + SENSOR( SNSR_Motion_Speed )
PRINT "RFIDタグの40ビット値:" + SENSOR( SNSR_Scanner_RFIDTag )
PRINT "バーコードデータを表す文字列:" + SENSOR( SNSR_Scanner_BarcodeData )
PRINT "X軸角(度):" + SENSOR( SNSR_Orientation_TiltX )
PRINT "Y軸角(度):" + SENSOR( SNSR_Orientation_TiltY )
PRINT "Z軸角(度):" + SENSOR( SNSR_Orientation_TiltZ )
PRINT "X距離(メートル):" + SENSOR( SNSR_Orientation_DistanceX )
PRINT "Y距離(メートル):" + SENSOR( SNSR_Orientation_DistanceY )
PRINT "Z距離(メートル):" + SENSOR( SNSR_Orientation_DistanceZ )
PRINT "磁北基準未補正コンパス方位:" + SENSOR( SNSR_Orientation_MagHeading )
PRINT "真北基準未補正コンパス方位:" + SENSOR( SNSR_Orientation_TrueHeading )
PRINT "磁北基準補正済みコンパス方位:" + SENSOR( SNSR_Orientation_CompMagHeading )
PRINT "真北基準補正済みコンパス方位:" + SENSOR( SNSR_Orientation_CompTrueHeading )
SLEEP(30)

No.283 2014/10/14(Tue) 22:14:59

Re: SENSOR関数の使い道 / しゅん
Surface pro 2を持っている知人に試してもらったところ
「最初は空白、真ん中あたりで数値がいくつか出て、後ろはNAN」とのことでした。
不正確ですみませんが、センサーが載っていれば何か出るようです。

No.286 2014/10/16(Thu) 21:59:06

Re: SENSOR関数の使い道 / stuncloud
// うちのSurface Pro2 (Win8.1) でこんな感じでした

人が存在した場合にTrue :
人との距離(メートル) :
静電容量(ファラド) :
電気抵抗(オーム) :
誘導係数(ヘンリー) :
電流(アンペア) :
電圧(ボルト) :
電力(ワット) :
気温(セ氏) :
気圧(バール) :
湿度(パーセンテージ) :
風向(度数) :
風速(メートル毎秒) :
照度(ルクス) : 76
光色温度(ケルビン) : NAN
力(ニュートン) :
絶対圧(パスカル) :
ゲージ圧(パスカル) :
重量(キログラム) :
X/Y/Z軸加速度(ガル) : NAN
X/Y/Z軸加速度(ガル) : NAN
X/Y/Z軸加速度(ガル) : NAN
X/Y/Z軸角加速度(度毎秒毎秒) : NAN
X/Y/Z軸角加速度(度毎秒毎秒) : NAN
X/Y/Z軸角加速度(度毎秒毎秒) : NAN
速度(メートル毎秒) : NAN
RFIDタグの40ビット値 :
バーコードデータを表す文字列 :
X/Y/Z軸角(度) : 60.9000015258789
X/Y/Z軸角(度) : -10.8000001907349
X/Y/Z軸角(度) : 222.199996948242
X/Y/Z距離(メートル) : NAN
X/Y/Z距離(メートル) : NAN
X/Y/Z距離(メートル) : NAN
磁北基準未補正コンパス方位 : NAN
真北基準未補正コンパス方位 : NAN
磁北基準補正済みコンパス方位 : NAN
真北基準補正済みコンパス方位 : NAN

No.287 2014/10/17(Fri) 00:32:42

Re: SENSOR関数の使い道 / ミリアム
回答ありがとうございます。

やっぱりセンサーがあると何か数値が出るんですね!面白いですね。


X/Y/Z軸角(度)って何かに使えそうですね。

PC(タブレット)が水平に寝かせられたらスクリプト開始、みたいなのもできるかも?

No.288 2014/10/17(Fri) 02:12:07
CLK_ACCを短時間で選択する方法 / マメ
あるソフト上でUWSCを使っていますが、CLK_ACC の種別のアイテムをCLKITEMで選択しようとすると、すごく時間がかかるか、もしくは動きません。

座標でクリックしようとしましたが、それはドロップダウンリストの中の選択肢なので、選択肢が増えた場合、その都度座標を変更しなければならない可能性があり、業務の都合上、なるべくそれは避けたいと考えています。

よって、ドロップダウンリストの中のclk_acc種別のアイテムをclkitemで選択する方法、もしくはUWSCを用いてシンプルで合理的な操作方法が他にあれば、教えてください。よろしくお願いします。

No.281 2014/10/14(Tue) 13:37:14

Re: CLK_ACCを短時間で選択する方法 / しゅん
あるソフトがわからない以上、的確な答えは出せませんが、、、
私が遅くてなんとかしたい、と思ったときは、アクセシビリティ経由をやめて、
COMが使えるならCOM経由、SCKEYやKBD+GETSTR/CHKIMGとか、Powershellを使ってUI Automation経由にするとかしてました。

No.282 2014/10/14(Tue) 21:36:05

Re: CLK_ACCを短時間で選択する方法 / マメ
しゅんさん、ご回答真に有難うございました。非力なもので、お書きいただいたことを、一読で理解することはできませんが、検索して調べてみたいと思います。ありがとうございました。
No.284 2014/10/15(Wed) 13:24:09

Re: CLK_ACCを短時間で選択する方法 / stuncloud
僕が以前やってみた方法は、
1. 対象のボタンが含まれている子ウィンドウのハンドルをgetctlhnd()で取得してhndtoid()でIDに変換
2. 子ウィンドウのIDでCLK_ACCのclkitem()を行う
でした
CLK_ACCのサーチ範囲を絞ることでclkitem()の速度を上げるという発想です

ただ、これも対象ソフトのウィンドウ構造次第なので何にでも使えるというわけではないんですよね…

子ウィンドウというのはgetallwin(ウィンドウID)等で取得できるウィンドウを構成するパーツなんですが
クリックしたいボタンが張り付いてるパーツの特定ができれば上記の方法が使える、という寸法です

No.285 2014/10/16(Thu) 12:19:54
2つのシステム間でデータの受け渡し / ミュウ
システムA.uwsとシステムB.uwsを同時に動かし、相互連携をさせたいと思います。
例えば、システムAから、システムBのiの値を読みに行く等。

最悪、システムBよりエクセルにiの値を吐き出し、システムAで読みに行くことを考えています。
しかし、できるだけ間にエクセルを挟みたくないと考えています。


ご教授いただけますと幸いです。

No.260 2014/10/11(Sat) 14:05:06

Re: 2つのシステム間でデータの受け渡し / stuncloud
ファイルで共有するならiniファイル、そうでないならクリップボードが楽でしょうか
後者は他のアプリケーション等の外部要因がクリップボードを使わないことが条件になりますが

// a.uws
sendstr(0, empty)
repeat
 i = getstr(0)
until length(i)
msgbox(i)

// b.uws
i = 100
sendstr(0, i)

No.268 2014/10/12(Sun) 01:44:59

Re: 2つのシステム間でデータの受け渡し / しゅん
システムA.uwsとシステムB.uwsをTHREADを使って同じプロセスで動作させるなら、PUBLIC変数が楽ですね。
プロセスが違うなら、stuncloudさんの方法か、共有メモリか。
他にもいろいろありますが、、、。

共有メモリ(メモリマップドファイル)なら、しろまささんがサンプルを書かれてましたね。
http://siromasa.digi2.jp/uwsc/u_sample/DLL/Class_SharedMemory.txt

No.272 2014/10/12(Sun) 10:12:19

Re: 2つのシステム間でデータの受け渡し / ミュウ
>stuncloudさん
iniファイルまったく知らなかったです。
調べてみます!情報大変ありがとうございます

>しゅんさん
THREADも使ったことがあるのですが、途中で動作がおかしくなってしまうんですよね。
PUBLIC変数等の定義に問題があるような気がしてきました。
手法も色々あるのですね。



ご回答ありがとうございました。
改めて結果を方向させていただきます。

No.274 2014/10/12(Sun) 12:42:00

Re: 2つのシステム間でデータの受け渡し / ミュウ
>stuncloudさん しゅんさん
iniファイルを用いて、やりたいことを実現することができました。
共有メモリに関しても、勉強になりました。
本当にありがとうございました。

No.277 2014/10/13(Mon) 08:23:21

Re: 2つのシステム間でデータの受け渡し / しろまさ
経験により一言もの申すー。(申します)

INIファイルは遅延書込みが発生するため、あまり高速で両方から書き込むと意図したログが残らない可能性があります。
使い方次第ですので単純にダメとは言えませんが。

No.278 2014/10/13(Mon) 12:01:09

Re: 2つのシステム間でデータの受け渡し / ミュウ
>しろまささん
情報ありがとうございます!今のところは問題が起きていないのですが、遅延も
起こり得るのですね。
速度も求めていますので、時間ができた時に、しろまささんのサンプル(共有メモリ)
も試したいと思います。
コメントありがとうございます。

No.279 2014/10/13(Mon) 12:06:00
chkimgに関する要望 / char
現在のchkimgには、img_msk_bgr6まで設定がありますがモニターの状態等の要因なのかosやグラボが原因なのか、何度画像を作り直しても正常に機能しない場合が多くあります。
もっと認識の判定に幅を持たせたり判定を緩くしてもらうことはできないでしょうか?
windows7、uwsc503です

No.276 2014/10/13(Mon) 04:45:58
全1137件 [ ページ : << 1 ... 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 >> ]