[ 掲示板に戻る ]

過去ログ閲覧モード

ResizeとSplit / まるぱ
初歩的な質問です

str = "abc def ghi"
dat = SPLIT(str, " ")
print Resize(dat)

これで出てくる数値が2になるですが、

Resize(配列変数)は「配列の上限値」が得られるので、数値は3ではないのでしょうか?

それとも配列が何個あるのかを取得するのにはResizeを使うよりもよい方法があるのでしょうか?

アドバイスよろしくお願い致します

No.2329 2016/04/16(Sat) 11:40:05

Re: ResizeとSplit / しろまさ
Length(dat) で。
No.2331 2016/04/16(Sat) 13:39:17

Re: ResizeとSplit / まるぱ
しろまささん、ありがとうございます!
これまで配列数をResizeしていましたので、すべてLengthに変更します

No.2338 2016/04/17(Sun) 08:42:31
フレームサイトのデータ取得 / ある
いつもお世話になっています。
フレームサイトの情報取得で困っていて、どう書いたらいいのかわかりません。
いくつかのサイトを参考にしているのですが何故かエラーになります。
このリンク先が、というよりいくつかのフレームサイトで軒並みエラーになるので
こちらの書き方が悪いのだと思うのですが、どう直したらいいのでしょうか?
下記の名前が抜き取れたらあとはだいたいわかると思うので、名前の抜取り方を
教えて頂けると幸いです。

Public IE
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
setOleEvent()
IE.Navigate("http://park16.wakwak.com/~html-css/frame/frame_set.html")
BusyWait()

print IE.document.frames.length //3を返す
print IE.document.frames[0].document.name //エラーになる(例外が発生しました)

//procedure busywait()は長くなるため省略

No.2324 2016/04/16(Sat) 01:46:40

Re: フレームサイトのデータ取得 / しろまさ
とりあえず、
× IE.document.frames[0].document.name
○ IE.document.frames[0].name

それでも IE.document.frames[0] でエラーが出る場合、グループポリシーの設定で回避できる場合があります。
https://hebikuzure.wordpress.com/2014/07/23/iecomptlistsubdomain/

IEの互換表示設定で手動追加したものはIEの履歴削除で消滅します。
自動追加するにはレジストリの書込みのために管理者権限実行が必要ですが。

No.2326 2016/04/16(Sat) 09:53:38

Re: フレームサイトのデータ取得 / リキュール
フレームサイトの情報取得いうのは具体的に何ですか?
テキスト文字であれば以下で取れると思います。

print IE.document.frames.item[0].Document.body.innertext

No.2333 2016/04/16(Sat) 18:18:54

Re: フレームサイトのデータ取得 / ある
しろまささん
IE.document.frames[0].name
は同様のエラー(例外が発生)が出まして、グループポリシーの方はざっと目を通してみたけれど
本質がまだ理解出来ていません。互換出来ていないから取得が出来ないこともある、ということ
でしょうか?周辺情報も集めてみようと思います。

リキュールさん
まさしくこれがしたかったことで、テキストの取得を希望していました。
いくつかのサイトではframes[0].documentとなっていたけれどそれではエラーが出て、
frames.item[0]で取得出来るというのは不思議な感じです。こちらが理解出来ていないせいです。
いい機会なのでもう少しDOM関連について調べてみます。

お二人のご意見、とても参考になりました。
どうもありがとうございます(^^)

No.2337 2016/04/17(Sun) 04:30:03
SLCTBOXのタイムアウト秒 / Japanzer
いつも便利に使わせていただきありがとうございます。

さて、SLCTBOXのタイムアウト秒を1秒より短くする方法はないものでしょうか。
下のように試してみましたが、ダメでした。
SLCTBOX(SLCT_BTN,0.5,,"")
SLCTBOX(SLCT_BTN,1/2,,"")

SLCTBOXはダイアログが自動に現れて消えるのが簡単にできるので重宝してます。

No.2319 2016/04/15(Fri) 10:37:13

Re: SLCTBOXのタイムアウト秒 / 森
タイムアウト秒は1秒以下に指定できないようですね。
現実的には60秒程度以下にするのは、人間相手のインターフェイスでは無いと思えますが、どういった使い方なのですか?
用途によっては、別アプローチのアドバイスができるかも知れません。

No.2320 2016/04/15(Fri) 17:24:04

Re: SLCTBOXのタイムアウト秒 / Japanzer
ゲームのスクリーンキャプチャを撮るためです。

通常のPrint ScreenやUWSCのsaveimgだと、うまく欲しいところのキャプチャができないゲームです。
ですが、ある時、いったんゲームを非アクティブにしてから、再度アクティブに戻してキャプチャすると成功することに気づきました。
この用途で、selctboxは、タイムアウトを指定するだけでゲーム画面のアクティブが切り替えられるので重宝します。
1秒がとてつもなく遅いというわけではないのですが、速いことに越したことはないので、質問させていただきました。

No.2321 2016/04/15(Fri) 18:19:54

Re: SLCTBOXのタイムアウト秒 / 森
それでしたら、あらかじめメモ帳などを小さなウインドウで立ち上げておき、
CTRLWIN()を使って、一旦メモ帳をアクティブにした直後に、ゲームをアクティブにするというのは?
もしかしたら、ゲームをCTRLWIN()でHIDEの後にACTIVATEでもいけるかも。

No.2332 2016/04/16(Sat) 18:16:12

Re: SLCTBOXのタイムアウト秒 / Japanzer
森さん、ありがとうございます。

おっしゃるように、ペイントソフトでやってます。 
 ctrlwin(MSPaint, max)
 sleep(0.1)
 ctrlwin(MSPaint, min)
で動作させてます。

ただ、slcttboxだと一行ですし、速くて読めないかもしれませんがメッセージも表示できるのに比べて、なんか力ワザみたいなコードに思えましたのでお尋ねした次第です。

No.2336 2016/04/16(Sat) 23:39:58
kbd()とunicode / Japanzer
いつも便利に使わせていただいています。

さて、kbd()は、unicodeでも動作しますし、asc()はunicodeを返します。
下のスクリプトを走らせるとbが打たれると思うのですが、実際には「2」が打たれます。
理由がわかりません。ご教授いただけたら幸いです。

sleep(3) // このあいだにテキストエディタをアクティブにする
msgbox(asc("b"))
kbd(format(asc("b"), -1))

No.2328 2016/04/16(Sat) 10:53:09

Re: kbd()とunicode / Liners
KBD()は仮想キーコード指定だから。62(16進)は、テンキーの'2'。
No.2334 2016/04/16(Sat) 21:24:33

Re: kbd()とunicode / Japanzer
Linersさん、ありがとうございます。

UWSCのヘルプに
KBD( 仮想KEY, [状態, ms] )
引数
 仮想KEY: 仮想KEYコード、もしくはUNICODE

とあるので、数字を入れたら単純にunicodeとして動いてくれるのかと思ってました。
なんらかの変換が必要なのですね。

No.2335 2016/04/16(Sat) 23:30:48
sendstrで文字が送れない / まるぱ
UWSCにはいつもお世話になっており、ありがとうございます。

UWSC prodで2つのexeファイルを作りました。
どちらもフォーム画面が表示されるタイプのものです。
仮にAとBと言うことにしますと、

Aのフォーム画面で入力したテキスト内容を、Bのフォーム画面のテキスト入力欄に送るようにしています。

使っているコマンドは
sendstr(ID,Data,1,true,2)
です。Dataの部分がテキスト内容です。

UWSCがVer 5.1.1.0ではうまく動作していました。
ですが、最近のバージョンから動作しなくなりました。
再び5.1.1.0に戻したところ、うまく動作しています。

sendstrについて何か仕様変更をされたのでしょうか?
以前のように改善していただけると助かります。

No.2307 2016/04/09(Sat) 09:24:36

Re: sendstrで文字が送れない / umiumi
確認しました。
修正します。

No.2308 2016/04/10(Sun) 14:14:36

Re: sendstrで文字が送れない / まるぱ
ありがとうございます。
No.2330 2016/04/16(Sat) 11:40:32
usbメモリー / sen
お世話になっております。
usbメモリーに環境を保存して、パソコンが変わっても使えるようになりませんでしょうか?

No.2323 2016/04/16(Sat) 00:02:54
SLCTBOX関数について / 96.4kg
いつもお世話になっております。

SLCTBOX関数について質問があります。
下記にてボタンを作成すると縦方向に並びますが、横方向に並べる事は可能でしょうか?

SELECT SLCTBOX(SLCT_BTN, 0, 381, 76," - 選択 - ", "A", "B", "C")
CASE SLCT_1
Call A.uws
CASE SLCT_2
Call B.uws
CASE SLCT_3
Call C.uws
SELEND

以上、宜しくお願い致します。

No.2316 2016/04/14(Thu) 15:29:59

Re: SLCTBOX関数について / ある
slctboxのみだとちょっとわからないですが
createformで横に並べたらだいたい同じ使い方が出来ます。
(望んでた内容でなければごめんなさい)

No.2317 2016/04/15(Fri) 01:05:31

Re: SLCTBOX関数について / umiumi
横にはできません。
No.2318 2016/04/15(Fri) 01:55:35

Re: SLCTBOX関数について / 96.4kg
ご回答、ありがとうございます。
いろいろ試していたのですが、出来ないようなので諦めます。

No.2322 2016/04/15(Fri) 18:39:50
止まる / しげぞう
いつも大変便利に使わせていただいてます。

今、あるアプリを自動化しようとしているのですが、
スクリプトを書いても自動記録を使っても、
必ずUWSCが止まってしまうのです。
スクリプトではクリックした瞬間に、
自動記録では最初のクリックをしたすぐ後に、
UWSCが(EXE化した場合でも)止まってしまいます。
マウスカーソルは普通に動きます。
そしてUWSCをクリックすると、再び動き出します。

これはいったい何故なんでしょうか?
どういった状態のときに起こり得るのでしょうか。
回避策はあるのでしょうか?
ご教授、よろしくお願いします。

No.2295 2016/04/06(Wed) 17:13:20

Re: 止まる / routa
uwscを管理者モードで実行してみたらどうですか。
また, あるアプリでごまかさず, どんなアプリなのか書くべきでしょう。

No.2297 2016/04/06(Wed) 22:52:43

Re: 止まる / 通りすがり
私も、とあるMMOでゲーム作業の記録をしようとしたら
最初のクリックまでしか記録できませんでした。

こういうソフトは、簡単に使えないと意味がないですね
時間をかけずにオートで作業をしたいのに、調べるのに
時間がかかっては本末転倒ですから

No.2313 2016/04/13(Wed) 08:19:32

Re: 止まる / daikirin
絶対座標でやってる?
No.2314 2016/04/14(Thu) 01:05:41
ファイルを添付してメール送信ができない / 560
いつもお世話になっております。

メール送信において、添付ファイルをつけたいのですが、
CreateOLEObj("CDO.Message").AddAttachment "添付ファイルのアドレス"
では「comエラー」となります。

なお、
.To
.TextBody
.Send
などは使用できるので、添付ファイルを使用しなければ利用できます。

「.AddAttachment」は、UWSCで使用できないのでしょうか?

初心者で大変恐縮でございますが、
ご教示いただけますと幸いです。

何卒よろしくお願い申し上げます。

No.2310 2016/04/12(Tue) 16:53:28

Re: ファイルを添付してメール送信ができない / しろまさ
VBAと違って関数は括弧つきで実行する必要があります。
その他説明がいろいろめんどいので下記リンクから必要カ所を読み取って下さい。

http://siromasa.html.xdomain.jp/uwsc/u_sample/Com/CDOMessage/Module_Gmail.uws

No.2311 2016/04/12(Tue) 18:37:31

Re: ファイルを添付してメール送信ができない / 560
しろまささん

お世話になっております。
無事出来ました!
ご親切にご回答くださり、本当にありがとうございます。

No.2312 2016/04/12(Tue) 19:22:28
replace関数の文字数上限 / たらこ
指定したテキストの空白を無くすスクリプトを組みました。
普通のテキストに対しては正常に動作するのですが、文字が一億文字以上あるテキストに対して動作させると、replace関数に対してsyntax Errorが発生したり、replace関数が-1を返したりします。
ここで質問です。
@これは処理落ちしているということですか、それともreplace関数に上限があるということですか。
A解決策で、ファイルを分割する以外に方法はありますか。
Breplace関数の戻り値が-1とはどういう状態ですか。

ここで、一億文字以上あるテキストは全て数字で、このテキストに不具合はありません。

//////////////////////////////////////

a = input("改行を消去したいファイルを入れる")
戻値 = FOPEN(a, F_READ )
文字列 = FGET(戻値,F_ALLTEXT)
moji = REPLACE(文字列, " ", "")
print moji

No.2302 2016/04/07(Thu) 15:09:46

Re: replace関数の文字数上限 / ある
str="123456789012345678901234567890"
str2=str ;str3=str ;str4=str

for n=0 to 20
str2=str2+str2
next
for n=0 to 22
str3=str3+str3
next

add=str+str+str
for n=0 to 16
add=add+add
next
add2=str3+add

print "文字数1="+length(str)
print "文字数2="+length(str2)
print "文字数3="+length(str3)
print "文字数add="+length(add)
print "文字数add2="+length(add2)

//----------------------------
replace関数に、というよりはuwscの扱えるデータの上限数を超えているのではないかと思いました。気になったので手動でチマチマ調べてみました。
整理されていないコードで見づらくてすみません(>_<)
上記を実行すると
文字数1=30
文字数2=62914560
文字数3=251658240
文字数add=11796480
文字数add2=263454720
を返します。
このadd=add+addのループ回数を17にするとエラーになります。
2億6000万文字よりもう少し上くらいまでは対応している、ということではないでしょうか。

No.2304 2016/04/07(Thu) 22:42:56

Re: replace関数の文字数上限 / umiumi
>replace関数が-1を返したりします。
これは replace関数の問題ではなく、ファイル読み込みの問題だと思います。
ファイルが正しく読み込まれているか確認してください。(戻値, 文字列を確認)
別アプリがファイルにアクセスしている場合は ファイルの排他制御をしてください。

No.2305 2016/04/08(Fri) 00:09:53

Re: replace関数の文字数上限 / たらこ
ある様
わざわざスクリプトまで作成して調査していただきありがとうございます。
自分で実際に調べるという考えが欠如していました。

umiumi様
問題の原因が別の処にある可能性を指摘していただきありがとうございます。

No.2306 2016/04/08(Fri) 15:22:44
全727件 [ ページ : << 1 ... 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ... 73 >> ]