Hello, in the process of macro recording encountered some problems, hope to get your help! I tried to record the window、control、 send key, are not successful, I recorded the process of operation into a video, easy to check! Thanks a lot!
Download LinksBecause the link can not be made, so the address can only be written in the picture)
The code in the video:
Use your code still can not run in sequence, feeling a bit strange, do not know where the problem, trouble you once again to help, thanks!
I have tried a lot of installation procedures, have the same problem, if QM can intelligently identify the problem, it would be great, I hope that the future version can be achieved!
Then the macro will wait 2 seconds before executing each line, and in the code editor you'll see a yellow arrow at that line. It can help you to find where is the problem, which code runs too fast, where need to wait.
I tested an older installed version, failed to download the newest, therefore the below macro probably will not work with your version (and it is not complete), it is just an example that works on my computer. Note that button ids changed, therefore better to record without the "Control" option.
;deb 2000 run"Q:\Downloads\iMindQ_15day_7_0_1_51051_Sites.exe" int w=wait(30 WA win("iMindQ® - InstallShield Wizard""MsiDialogCloseClass"))
#region Recorded 2016-12-27 08:46:46 ;int w1=act(win("iMindQ® - InstallShield Wizard" "MsiDialogCloseClass")) ;;;;;;;;the same as above lef351333 w 1;;push button 'Next >' wait0-WV w int w2=wait(15win("iMindQ® - InstallShield Wizard""MsiDialogCloseClass")) lef36263 w2 1;;radio button 'I accept the terms in the l...' lef349334 w2 1;;push button 'Next >' wait0-WV w2
;it seems that your installer does not have this page, therefore your macro would not have these 4 lines int w3=wait(24win("iMindQ® - InstallShield Wizard""MsiDialogCloseClass")) lef34254 w3 1;;check box 'I would like to receive inf...' lef349336 w3 1;;push button 'Next >' wait0-WV w3
Hello, now entered into the final step, stopped, and did not click the Finish button to change the times did not take effect, I would like to ask which command can be the perfect solution? Thanks again!
My macro is incomplete, it does not click the Finish button, but stops there. Record whole macro like before, with selected "Window" or "Control". Then insert wait 0 -WV lines like in my macro.
After several tests, and finally succeeded, adding two lines of code, see the following picture, the entire macro code, if not (wait 0 -WV w *) is not working, and in each waiting window below, add Activation of the code, for example (act (win ("iMindQ® - InstallShield Wizard" "MsiDialogCloseClass"))), if not, may not find the window!
If QM can automatically add the act code after each wait window! After the end of the current window: automatically add (wait 0 -WV w *) code, it will be more successful! More intelligent!
Finally, thanks to Mr. Gintaras for his great support and help!
Yes, this or similar will be in the future. Also in the future QM should record "wait for window containing control X", which is now supported by win().
Hello, feedback, I derived from QM exe file, in actual use, often appear in the first window or the last window to stop the case, do not know why, but in the QM debugging is OK
The "Run in separate process" option does not change .exe properties. But it can be useful when developing a macro for .exe: if checked, the Run button creates and runs .exe file (or .qmm file, as set in dialog "Make Exe").
kyjdp Wrote:Hello, feedback, I derived from QM exe file, in actual use, often appear in the first window or the last window to stop the case, do not know why, but in the QM debugging is OK
Try to insert this at the beginning:
spe 1000
Then waits 1000 ms after each lef. By default waits 100 ms in macro, 0 ms in function.
Also insert this after each line containing wait...win:
Int w * = wait (16 win ("iMindQ® - InstallShield Wizard" "MsiDialogCloseClass"))
Change to:
Int w * = wait (0 WA win ("iMindQ® - InstallShield Wizard" "MsiDialogCloseClass"))
In all the computers can be run perfectly!
So I recommend that QM developers use the code preferentially when recording a form: int w * = wait (0 WA win This will make the final success, in addition, at the end of each form, use the code: wait 0 - WV w *
#region Recorded 2016-12-28 20:14:44 run"$qm$\iMindQ_8_1_1_51836.exe"
int w2=wait(0 WA win("iMindQ® - InstallShield Wizard""MsiDialogCloseClass")) lef4311id(2851 w2)1;;push button 'Next >' wait0-WV w2
int w3=wait(0 WA win("iMindQ® - InstallShield Wizard""MsiDialogCloseClass")) lef2110id(2689 w3)1;;radio button 'I accept the terms in the l...' lef4510id(2851 w3)1;;push button 'Next >' wait0-WV w3