I have written a program that automates both keystrokes and mouse-clicks that acts as a "bot program for a particular online game. In other words, the bot program plays the game for me when I'm not there. The problem with this is that it uses up desktop space, and I can't do anything else while the program is running. I was wondering if it's possible in virtuawin to run the bot program on one desktop, while I do other things on another desktop?
I use the program AutoIt for the programming, its basically BASIC programming language. Also, when the bot program is running, it runs in the background so there is no pop-up window. The only sign that it is running, aside from the mouseclicks and keystrokes, is a small icon in the tray.
So, nobody has any help on this question?
Hard to tell, is this game in fullscreen mode? Also, without knowing the details of AutoIt I cannot say if this tool will work in case you hide the game window. Why not give it a try? You might need to configure your gaming window to use the laternative hiding technique (see VirtuaWin help docs).
Unfortunately, since AutoIt is sending keystrokes and mouse clicks, I don't think this will work. Imagine you opened up your browser to go to a we page, but instead of being able to type in a URL, you got all your bot's keystrokes showing up everywhere.
Now, if AutoIT has a way of sending key strokes and mouse click to a specific program, and you're able to do other things without conflict, then VirtuaWin might help you the way you're looking for.
I appreciate the responses!!
A few thoughts...
- If you can use AutoIt to check the state of the game's main window you should be able to determine whether it is minimised. If you can then create a VW Window Rule to use 'Hide by minimizing' the game window and then get your autoit script to simply stop while the window is minimized
- Any program can send a module message to the virtuawin 'window' (only window with a classname of 'VirtuaWinMainClass'), so you can use message VW_CURDESK (1048) to get the current desktop (e.g. run 'VirtuaWin.exe -msg 1048 0 0'). You can then add to your autoit script regular calls to find out the current VW desktop and pause if not the game one.
- The most efficient method would be to create a VW module which could send a message to your AutoIt script whenever the desktop changed, there was talk of a simple module which could be used to forward all module messages to a window of your choice, this would seem to be what you need....
The new 'Message Passthrough' module has been added, this should be able to provide your AutoIt script with the information it requires. Go to the main Modules page to get it.