|
お久しぶりでございます。最近また使いだしたのですが 昔と状況が変わってて数点困ってます。
とりあえず1個目ですが Win10 64bitで uwscデバッガが挙動不安定でとても使いにくいです。 ソースコピペして実行などが出来ないとかチャタリングじみた挙動をするとか
だましだましでもなんとか安定的に使用する方法は無いでしょうしか? 変数の代入ミスとかポカミスの把握でとても重宝していたので困っています。
よろしくお願いします。
|
No.1244 2021/03/08(Mon) 14:11:53
|
☆ Re: デバッガが不安定 / Rayna |
|
|
|
>>1244 もも さん
「など」「〜とか」じゃなくて 実際に起っている症状 を 具体的 に 症状を切り分けて 書いていただけると回答もしやすいです。 貼り付けが出来ないって事で合ってますかね?
以前数回起こった気もしますけど現在の環境では再現しませんでした (Windows 10 x64 20H2 / UWSC Pro 5.302)
何らかのリソースを使い果たしてるとかかもですね 頻発するようなら以下を試してみてください 再現できてないので未検証です
チャタリングじみた挙動 はどういう挙動か分らなかったです 何が?: キーボード, マウス, ... 何に対しての操作?: コントロールのボタン, エディトの入力, ... 発生のタイミングは?: スクリプト実行時, 停止中, 起動時, ...
//| !_SendWMPaste_!.uws |//////// // GET_UWSC_DIR+"\DbgScript" にこのスクリプトを置く // 貼り付けできないときに[Script]ボタンから実行 Const TRY_TIMEOUT_SEC = 5 Const TRY_INTERVAL_SEC = 0.01
Dim idWndUDebug = GetId(GET_FROMPOINT_WIN) Dim hWndTRichEdit = GetCtlHnd(idWndUDebug, "TRichEdit") Dim nX=Status(idWndUDebug, ST_X), nY=Status(idWndUDebug, ST_Y) Dim i, tm=StopWatch() If Status(idWndUDebug, ST_CLASS)<>"TFOya" Then Exit2(1, "UWSC Debugger の獲得に失敗", 0, 0, 1)
Bal("貼り付け処理中", nX, nY) While StopWatch(tm)<TRY_TIMEOUT_SEC Sleep(TRY_INTERVAL_SEC) If SendWM.Paste(hWndTRichEdit)=FALSE Then Continue Exit2(0, "貼り付け成功", nX, nY) WEnd Exit2(1, "貼り付け失敗", nX, nY)
Function StopWatch(tmSec=); RESULT=GetTime()+G_TIME_ZZ/1000; If tmSec<>EMPTY Then RESULT=RESULT-tmSec; FEnd Procedure Bal(sMsg, nX, nY); Balloon("SendWMPaste: "+sMsg, nX, nY, 0, 7); FEnd Procedure Exit2(nExitCode=0, sMsg=, nX=0, nY=0, tsWaitSec=2); If Length(sMsg)=0 Then ExitExit nExitCode; Bal(sMsg, nX, nY); Sleep(tsWaitSec); ExitExit nExitCode; FEnd Module SendWM Def_Dll SendMessageW(hWnd, UInt, Word, Long): Long: user32.dll Const WM_GETTEXTLENGTH = $000E Const WM_PASTE = $0302
Function GetTextLength(hWnd) RESULT = SendMessageW(hWnd, WM_GETTEXTLENGTH, 0, 0) FEnd
Function Paste(hWnd) Dim nLen = GetTextLength(hWnd) SendMessageW(hWnd, WM_PASTE, 0, 0) RESULT = nLen<>GetTextLength(hWnd) // GetTextだと文字長制限があるのでGetTextLengthで書き込めたか確認 FEnd EndModule
|
No.1245 2021/03/10(Wed) 11:31:09
|
|