UWSC 掲 示 板
投稿時に「証明書が不正です」と出る場合には、JavaScriptをオンにしてください
動作不具合での質問の場合には環境(OS,IEのバージョン等)の表記もしてください
タイトルは質問内容を表したものにしてください
ネットゲーム関係の質問はご遠慮ください

オメガ 時計 コピー / オメガ 時計 コピー
時計 スーパーコピー 優良店 へようこそ,copygus.com/buranndo-113.html当店のオメガ 時計 コピー の商品はなかなかの好評でご自由にお選びください。
No.5204 2018/03/08(Thu) 23:52:13

Re: オメガ 時計 コピー / 注意
閲覧しないでください。早急に削除お願いします。
No.5206 2018/03/09(Fri) 01:29:42
非adminユーザにてUWSC実行中に発生するUACでのPW自動入力方法について / プログラムほぼ未経験
はじめまして。
プログラム未経験と申します。一企業のシステム部門の者ですが、NEメインでプログラム経験は全くありません。
一般ユーザに、とあるexeファイルを実行してもらうため、adminexec及びUWSCを利用した管理者権限での自動実行ファイルを作成・配布しようと考えています。
ゲストユーザにてUWSCを管理者実行し、その後exeを自動実行させた際に発生するユーザーアカウント制御にて管理者PWを自動入力させたいのですが、
複数手段を検討したところ、どうしてもUAC表示で自動実行がとまってしまいます。
上記解決法について、ご存知の方おられましたらご教示いただけますでしょうか。

以下は当方で試してみた内容になります。

・UWSC及び対象exeファイルの特権レベルを「管理者として実行」に設定の上実行したが、UACは発生する
・UAC表示の際にThreadで別処理として実行できないか試したが不可(下記URLを参照に試行)
http://uwscpro.blog98.fc2.com/?tag=%E3%83%9D%E3%83%83%E3%83%97%E3%82%A2%E3%83%83%E3%83%97%E5%87%A6%E7%90%86
・UACが出たことを検知したらyesボタンを押す処理を実行させようとしたが不可(下記URLを参照に試行)
http://d.hatena.ne.jp/pepe127/20140718/1405685820

UAC表示環境下ではUWSCによる自動化処理は難しいのでしょうか。

以上、お分かりの方おられましたらよろしくお願いいたします。

※ソースコードの記載は、正しい対処法の目処が全くたっていないため、今回は控えさえていただきます。申し訳ございません。

No.5199 2018/03/08(Thu) 13:25:54

Re: 非adminユーザにてUWSC実行中に発生するUACでのPW自動入力方法について / stuncloud
adminexecというのは別のユーザとして実行させるもので管理者特権付きでは実行されないということでしょうか

UACの昇格ダイアログをスキップする手段としてよく使われるのがタスクスケジューラです
実行ユーザーに管理者を指定&「最上位の特権で実行する」を有効にしたタスクを作成しておき、タスクからUWSCを実行させるというものです
このタスクを何かしらの手段で実行することによりUACによる昇格を省略して管理者特権でUWSCを動作させることができます

しかしこの状況ですと同じことはできませんよね
そこで、GPOで同様のタスクを作成しておきユーザー環境で実行できないかどうか試してみました
が、残念ながらユーザー環境でこのタスクの実行どころか設定を反映させることすらできませんでした
何かしらの手段があるのかもしれませんが、少し調べた限りでは解決策は見つかりませんでした

他の方法が思い当たらないので僕としてはちょっと無理そう、という結論になります

No.5201 2018/03/08(Thu) 17:19:21
月初4営業日 / はやしはる
月初から4番目の平日に経費データを落とすスクリプトを実行するようスケジュール設定したいです。
複雑な条件だと思いますが『式による設定』で書く方法があれば教えていただきたいです。

No.5183 2018/03/05(Mon) 22:27:18

Re: 月初4営業日 / ある
式ちょっと思いつかなかったけれど同様の挙動であれば
条件を「毎日実行」とした上で
曜日判定を行ってインクリメントで4番目の平日に実行、
それ以外は終了されては?

曜日取得はこんな感じで。

gettime()
print g_time_ww

No.5188 2018/03/06(Tue) 20:01:52

Re: 月初4営業日 / satocha
スケジュール設定ではヘルプに説明のある変数とそれを使った算術演算が使えるだけなので、
細かいことをやろうとすると、あるさんがおっしゃるように、スクリプト側で面倒を見るしかありません。

ただ、「平日」の意味が「土日以外の日」なら、簡単にスクリプトに作り込めますが、祝日が絡むととたんに話は複雑になります。

「祝日 javascript」で検索すると、がんばってプログラムしている例を多数見つけることができるので、それをUWSCに移植してもいいし、ScriptcontrolでJSのまま利用してもいいかもしれません。

しかし、例えば来年、再来年の祝日をプログラムで生成(判定)しようとしても、
こんな話
https://www.google.co.jp/search?q=%e5%8d%b3%e4%bd%8d%e3%81%ae%e6%97%a5%e3%80%80%e4%bc%91%e6%97%a5%e3%80%80%e7%a5%9d%e6%97%a5
とか、こんな話
https://www.google.co.jp/search?q=%e6%9d%b1%e4%ba%ac%e4%ba%94%e8%bc%aa%e3%80%80%e9%96%8b%e4%bc%9a%e5%bc%8f%e3%80%80%e7%a5%9d%e6%97%a5%e3%80%80%e4%bc%91%e6%97%a5
とかがあって、とてもじゃないけど仕事で使えるレベルにはなりそうもありません。

なので、祝日リストを別ファイルで用意するか、スクリプトの中に埋め込んでおくしかないと思います。

というより、逆に月初4営業日のリストを作っておくほうが簡単かもしれません。
gettime()
today=g_time_yy4+g_time_mm2+g_time_dd2
if !pos( today, FourthDays ) then exitexit //その日じゃなかったらスクリプト終了
//以下スクリプト本体
//または、callでスクリプト本体を呼んでもいい

//第四営業日リスト
textblock FourthDays
20180104
20180205
20180305
20180404

endtextblock

No.5193 2018/03/07(Wed) 08:07:17

Re: 月初4営業日 / はやしはる
あるさん、Satochaさん

ご返答ありがとうございます。やはり式では難しいですね。
第4営業日リストというのは目から鱗です。
さっそく活用します♪

No.5197 2018/03/07(Wed) 22:29:43
ごちゃ混ぜデータを整理する / オグラ
下記みたいにバラバラのデータを会社名毎にまとめたいと思うのですが
会社名   品名         金額
A商事 |インクカートリッジ |\800
B建設 |コピー用紙 |\500
C電気 |カラーペン |\250
D不動産 |付箋 |\300
C電気 |インクカートリッジ |\800
A商事 |コピー用紙 |\500
D不動産 |カラーペン |\250
会社毎にファイル名を作って保存して行ければ一番楽なんですが、会社毎の情報をエクセルに貼り付けたいと思っている為、
「A商事」だけの情報をクリップボードなどに入れてエクセルに貼り付け保存
「B建設」だけの情報をクリップボードなどに入れてエクセルに貼り付け保存
のような処理をしたいと思ってますがいい方法が思いつかない為書き込みをさせて頂きました。

なにかいい方法がありましたら是非教えて頂ければと思います。

よろしくお願い致します。

No.5185 2018/03/06(Tue) 13:09:48

Re: ごちゃ混ぜデータを整理する / ある
COM操作で問題ないのでは?

Ex=createoleobj("Excel.Application")
Ex.sheets("sheet1").range("a1")="test"

確かこんな感じで動いたかと。
会社ごとにbookを変えるのかsheetを変えるのかがわかんなかったので、
ヒント提示のみで。

No.5187 2018/03/06(Tue) 19:57:57

Re: ごちゃ混ぜデータを整理する / しろまさ
// こういうことでないの?

TextBlock list
会社名   品名         金額
A商事 |インクカートリッジ |\800
B建設 |コピー用紙 |\500
C電気 |カラーペン |\250
D不動産 |付箋 |\300
C電気 |インクカートリッジ |\800
A商事 |コピー用紙 |\500
D不動産 |カラーペン |\250
EndTextBlock

ser = "A商事"
str = rReplace(list, "^(" + ser + ".*\r?\n?)|^.*\r?\n?", "$1")
MsgBox(str)

Function rReplace(s, p, r); Dim g = CreateOLEObj("VBScript.Regexp"); g.Pattern = p; g.Global = TRUE; g.Multiline = TRUE; Result = g.Replace(s, r); FEnd // 正規表現 置換

No.5194 2018/03/07(Wed) 13:18:40
フォーム入力の方法 / かじさん
小林シンヤさんの本で勉強しているのですが,フォーム入力やラジオボタンを押す部分が何度読んでも理解できない状態です.
IE.document.forms[0].elements[0}というのが理解できず….
かといってフォームや要素の名前で指定するにもソースをテキストファイルで開いてからどこの文字列を取得していいかが理解できず困っています.

このUWSC掲示板の,タイトル,お名前に何か文字を入力してから文字色で青★を選びプレビューボタンを押す場合でコードを書いて説明いただけないでしょうか?
あまりにも質問のレベルが低くて恐縮ですが,よろしくお願いします.

No.5182 2018/03/05(Mon) 21:10:28

Re: フォーム入力の方法 / ある
僕も最初そこ、結構こけましたw

HTMLの構造はご存知ですかね?
クロームであればF12でサイトのソース見れたりします。
formsは<form>タグですね。elementsはその中の部品って感じです。

一応イメージ掴めるように置いときます。
busywaitはサンプル#34にあるんで拾ってもらえたら(長くなるので略)
http://www.uwsc.info/sample.html#n34

//--------------------------------------

Public IE
IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
setOleEvent()
IE.Navigate("http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi")
BusyWait()

for n=0 to IE.document.forms.length-1
for i=0 to IE.document.forms[n].elements.length-1
IE.document.forms[n].elements[i].value=n+"★"+i
next
next

No.5189 2018/03/06(Tue) 20:11:32

Re: フォーム入力の方法 / かじさん
ありがとうございます.
感謝いたします。

ただ、本以上に難しいスクリプトをいただいたので私の実力では申し訳ないぐらいに理解しづらい状態にあります.
IEを立ち上げるところまでしか理解できませんでした。

setOleEvent()とBusyWait()はいったい何をしているのでしょうか?

for n=0 to IE.document.forms.length-1
for i=0 to IE.document.forms[n].elements.length-1
IE.document.forms[n].elements[i].value=n+"★"+i
next
next

ですが、すべてのフォームにn★iを書くという認識でいいでしょうか?
プログラムを実行しても何も起こらなかったので.
検証のためにmsgbox(IE.document.forms.length)としたのですが、エラーが生じました.
IE.document.forms.lengthは何の値か見れないのでしょうか?
理解が悪すぎて申し訳ないのですが,ご教示いただければ幸いです.

No.5191 2018/03/06(Tue) 20:53:21

Re: フォーム入力の方法 / ある
あぁ、すいませんsetOleEventも入ってましたね。
それはpro版で自動生成されるものなんです。
今度のは貼り付けるだけで動くようにしました。
busywaitは「IEがちゃんと表示されるまで待つ」という処理ですね。
IE.docuent.forms.lengthはformの数になります。
見られなかった理由はIEの値が入っていなかったからではないかと思います。
今回のはそれも見られるようにしました。

IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://www3.rocketbbs.com/13/bbs.cgi?id=umiumi")
repeat
Sleep(0.2)
until (! ie.busy) and (ie.readyState=4)
msgbox("formの数は="+IE.document.forms.length+"個だよん")

for n=0 to IE.document.forms.length-1
for i=0 to IE.document.forms[n].elements.length-1
IE.document.forms[n].elements[i].value=n+"★"+i
next
next

No.5192 2018/03/07(Wed) 07:32:32
数字の音声認識 / Chico
音声認識について、
「数字」を読み込ませたいと思うのですが、現在は

for i = 0 to 1000 //数字読み込ませ
seisu[i] = i
next
RECOSTATE(True, seisu)

こんな感じで読み込ませているのですが、
数が多くなるにつれ、プログラムの立ち上がりと
認識レスポンスが重く重くなってしまいます。
(私の環境では千を超えた程からかなり遅くなっていきます。)

何か良い対処法があれば教えていただきたいと思います。
よろしくお願いいたします。

No.5186 2018/03/06(Tue) 18:19:33
タグ名を分岐にしたい / Nomu
あるサイトに掲載されてる画像を名前を付けて保存したいと考えています。
for〜next文を使って以下のようなスクリプトを書き、動いてるいるのですが、
画像が存在しない場合、タグ名が「HTTP 404 未検出」となります。
それでも動くのですが、時間がもったいないのでタグ名前が「HTTP 404 未検出」となった場合は次の画像(for文での次の値)に移るようにスクリプトを書きたいと思います。
ただ、その書き方が分からないので教えていただけないでしょうか。
よろしくお願いします。

// 登録した画像を取得するスクリプト

ACW(GETID("https://learning.XXXXXX/YYYYY/course/20170306_135245860_copy_2/sco57283262/02mkt/el/01- - Internet Explorer","IEFrame"),0,0,1920,1030,5)

// ファイル名を順次変更
for i = 1 to 5
for j = 1 to 5
for k = 1 to 5
for l = 1 to 9
SENDSTR(0,"https://learning.XXXXXX/YYYYY/course/20170306_135245860_copy_2/sco57283262/02mkt/el/0" + i + "-0" + j + "-0"+ k + "-0" + l +".jpg")

sleep(1.5)
//アドレスバーをクリック
BTN(LEFT,CLICK,957,49,20)

//アドレスバーにリンク先を張り付ける
KBD(VK_CTRL,DOWN,20)
KBD(VK_V,CLICK,20)
KBD(VK_CTRL,UP,20)
KBD(VK_RETURN,CLICK,20)

sleep(0.5)
//現れた画像をクリック
BTN(LEFT,CLICK,926,762,20)
//現れた画像を右クリック→名前を付けて保存
BTN(RIGHT,CLICK,926,762,20)
KBD(VK_S,CLICK,20)

//ファイル名を変更せずに保存
ACW(GETID("画像の保存","#32770"),8,0,947,592,55)
KBD(VK_RETURN,CLICK,30)

sleep(0.7)
ACW(GETID("https://learning.XXXXXX/YYYYY/course/20170306_135245860_copy_2/sco57283262/02mkt/el/01- - Internet Explorer","IEFrame"),0,0,1920,1030,5)

next
next
next
next

No.5179 2018/03/03(Sat) 16:25:57

Re: タグ名を分岐にしたい / stuncloud
「HTTP 404 未検出」が表示される座標が固定されているのであれば、マウスカーソルをそこに移動させてposacc()で文字列を取得するというのはどうでしょう、該当する文字列が取得できれば画像がないということでcontinueします

mmv(x, y) // 文字列が表示される座標にマウスカーソルを移動
if posacc(0, G_MOUSE_X, G_MOUSE_Y) = "HTTP 404 未検出" then
 continue // 以降の処理をしないで次のループに進む
endif

こんな感じ
文字列の部分一致で判定したい場合は

mmv(x, y)
msg = posacc(0, G_MOUSE_X, G_MOUSE_Y)
if pos("404", msg) > 0 then
 continue
endif

こんな感じにします

No.5180 2018/03/05(Mon) 10:17:49
行の削除 / との
操作を記憶させたスクリプトからMMVで始まる行を削除させたいと思います。
以下のように書いたのですが、MMVの行が削除されません。
お手数ですが、おかしな箇所を修正いただけないでしょうか。



Repeat
fnm = INPUT("MMVを削除したいスクリプトをドラッグ&ドロップしてください。")
if fnm = EMPTY then ExitExit
Until FOPEN(fnm, F_EXISTS) and (Pos(".uws", fnm)>0)
Repeat

ID = FOPEN(fnm,F_READ or F_WRITE)

//開始行
LINE = 1

WHILE FGET(ID,F_LINECOUNT) >= LINE
IFB FGET(ID,LINE,1) = "MMV"
FDELLINE(ID,LINE)
ENDIF

LINE = LINE + 1
WEND
FCLOSE(ID)

No.5173 2018/03/02(Fri) 23:49:00

Re: 行の削除 / トンボ
Repeatが1つ多いなど誤記もありますが、行削除するとテキスト内容(全体行数)が変化するため、その度にテキスト内容の取得と1行目からのチェックを繰り返す必要があります。
ただし、処理内容が複雑になり非効率なので、テキスト内容の下から上へチェックする処理にしました。

REPEAT
 FilePath = INPUT("MMVを削除したいスクリプトをドラッグ&ドロップしてください。")
 IF FilePath = EMPTY THEN EXITEXIT
UNTIL FOPEN(FilePath, F_EXISTS) AND (POS(".uws", FilePath) > 0)

FileID = FOPEN(FilePath, F_READ or F_WRITE)

// 下から上へ1行ずつチェックし、"MMV("があれば行削除する
FOR Line = FGET(FileID, F_LINECOUNT) TO 1 STEP -1
 IFB POS("MMV(", FGET(FileID, Line)) = 1
  FDELLINE(FileID, Line)
 ENDIF
NEXT

FCLOSE(FileID)

No.5178 2018/03/03(Sat) 11:40:36
チェックボックスの操作 / もっさん
72番目のチェックボックスにチェックを入れたいとき

for i = 1 to 72
KBD(VK_Tab , CLICK , 5)
next
KBD(VK_Space , CLICK , 5)

としています。
たとえば、72番目のチェックボックスの名称を取得して、そこでスペースを押すなどのスマートに書く方法はありませんか。

No.5166 2018/02/28(Wed) 23:33:50

Re: チェックボックスの操作 / satocha
ヘルプのgetitem、clkitem、chkbtnの各項目を熟読すると、いい知恵が浮かぶと思います。

あと、No.5163で挙げたツールでウインドウを調べるのも効率的だと思います。

No.5167 2018/03/01(Thu) 08:21:40

Re: チェックボックスの操作 / もっさん
satochaさん

アドバイスありがとうございます。
ご教示のgetitem、clikitem、chkbtnを調べて2日間がんばって試したのですがどうも行き詰りました。
簡単で結構ですので一例をあげていただけないでしょうか。

No.5174 2018/03/02(Fri) 23:56:16

Re: チェックボックスの操作 / satocha
問題は目的のチェックボタンをどう取得するかです。ウインドウがわからないので具体的な説明は難しいです。
まず、
id=getid(ウインドウタイトル。ウインドウのクラス)
str=""
for item in getitem(id,-1)
 str=str+item+"<#CR>"
next
sendstr(exec(notepad),str)
のような感じで、どんなアイテムがとれているかリストアップしてください。
この作業を、見やすい形で代行してくれるのがNo.5163で挙げたツールですので、こちらを使ったほうが効率的だと思います。
あるいはUWSCの記録機能でウインドウ操作を高レベル記録し、生成したマクロを調べてみてください。

目指すチェックボックスのアイテム名が確定すれば、
CLKITEM( ID, アイテム名, CLK_BTN, On/Off, 番号 )でクリックできます。
同名のもの一つしかなければ番号は不要です。On/Offを指定しなければ、チェックをトグルします。

No.5175 2018/03/03(Sat) 03:11:05

Re: チェックボックスの操作 / もっさん
satochaさん

ありがとうございます。
だいぶ方針が見えてみました。
再度チャレンジしてみます。

No.5176 2018/03/03(Sat) 10:43:03
ログイン後に表示される「○○○パスワードを保存しますか?」について / リキュール
ホームページにログインすると以下のようなメッセージが下欄に表示されます。
この時「このサイトではしない(Y)」をクリックしたいのですが方法が分かりません。
よろしくお願いいたします。(環境は Windows7 IE11です。)

○○○パスワードを保存しますか?  はい(Y)   このサイトではしない(N)

No.5158 2018/02/27(Tue) 17:24:12

Re: ログイン後に表示される「○○○パスワードを保存しますか?」について / satocha
UWSCのタスクスケジュール機能でclassが「IEFRame」のウインドウが出現したときに立ち上がるUWSスクリプトを作り、
そのスクリプトの中で、「このサイトではしない」ボタンを探す…

というような感じで頑張れば何とかなるかもしれません。
このツール
http://nem.symphonic-net.com/uwsct/fcuc_readme.htm
でIEを調べたら「このサイトではしない」ボタンも取れていましたから。

でもUWSCで頑張るよりIEの設定を変えるほうが簡単だと思います。
http://pasofaq.jp/program/internetexplorer/savepassword.htm

No.5163 2018/02/28(Wed) 19:18:47

Re: ログイン後に表示される「○○○パスワードを保存しますか?」について / リキュール
satocha さん、お世話になります。

UWSCコードの断片生成器を用いてgetitemからITEM名等を取得し、
clkitemでボタンを押すことが出来ました。
質問の勘違いがあり、"このサイトではしない"のボタンを押すのではなく、
閉じるの×ボタンでした。(思い通りの操作ができました)
ありがとうございました。

No.5171 2018/03/02(Fri) 14:51:08


 過去ログ(〜2017/08/24)・検索ツール


以下のフォームに記事No.と投稿時のパスワードを入力すれば
投稿後に記事の編集や削除が行えます。
200/200件 [ ページ : << 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ... 20 >> | 過去ログ ]