Page 1 of 2

Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 17 Jan 2017, 14:59
by tmplinshi
DD is a virtual keyboard/mouse library, used to simulate keys/mouse in hardware driver level.

Unlike WingRing0 that doesn't support USB keyboard, DD even works without a physical keyboard.

Source

Example:

Code: Select all

#Include, class_DD.ahk

DD.str("abc")                     ; Send string abc
DD._key_press("F11")              ; Send hotkey F11
DD._key_press("LWin", "R")        ; Send Win+R
DD._key_press("Ctrl", "Alt", "S") ; Send Ctrl+Alt+S
There are some other methods such as sending mouse button or moving mouse, see the Source page for details.

Limitation:
A network connection is required when loading the DD library (dll file), but once loaded the computer can go offline.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 20 Feb 2017, 15:44
by mattcrf
Does not work anymore :(
I think the developer of DD blocked it

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 20 Feb 2017, 21:29
by tmplinshi
I've updated the dlls to latest version (71598), and now works again.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 21 Feb 2017, 03:06
by mattcrf
tmplinshi wrote:I've updated the dlls to latest version (71598), and now works again.
Thanks! Now it's working fine.

This library is helping me a lot, but I'm afraid that at some point it will stop working and i'll not be able to make it work again (because of the network connection limitation). Do you know any method to make it work offline or a smiliar library to simulate keys in hardware level? I've tried WinRing0 but didn't really worked for me because of the USB Keyboard limitation.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 21 Feb 2017, 10:58
by tmplinshi
I don't know other similar libraries.

The author of DD provides a paid service for removing the network requirement, you can mail him at this address: [email protected]

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 21 Feb 2017, 14:53
by SnowFlake
cool, im trying it out now :)

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 01 Mar 2017, 04:33
by Gepardsux
have you tried making a hotkey that spams itself?
For example using F1 key.

I have tried making one, but F1 key is not pressed. But it works when for example binding letter A when F1 key is pressed.

I have contacted the developer regarding this bug, and yet there's still no answer

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 01 Mar 2017, 06:49
by tmplinshi
@Gepardsux

Code: Select all

#Include, class_DD.ahk
SetWorkingDir %A_ScriptDir%

$f1::settimer, timer1, -1

timer1:
	send {f1}
	msgbox f1
return

$f2::settimer, timer2, -1

timer2:
	DD._key_press("F2")
	MsgBox f2
return
Run the above code, you'll see when pressing F1, the MsgBox only popup once. But pressing F2, the MsgBox is popping up endlessly.

So I think this is not really a bug, but because the "$" symbo has no effect when using non AHK code to send keys.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 03 Mar 2017, 06:01
by raskun
tmplinshi wrote:@Gepardsux

Code: Select all

#Include, class_DD.ahk
SetWorkingDir %A_ScriptDir%

$f1::settimer, timer1, -1

timer1:
	send {f1}
	msgbox f1
return

$f2::settimer, timer2, -1

timer2:
	DD._key_press("F2")
	MsgBox f2
return
Run the above code, you'll see when pressing F1, the MsgBox only popup once. But pressing F2, the MsgBox is popping up endlessly.

So I think this is not really a bug, but because the "$" symbo has no effect when using non AHK code to send keys.
I think its still bug though, It doesn't really produce a hard pressed, its more on a soft press/virtual press on a keyboard which won't really give an output.

Try it with this: http://www.keyboardtester.com/
and you'll see what I'm talking about

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 12 Mar 2017, 21:09
by legitdisturbed
hi tmplinshi, do you know if there is any way to execute _key_press() on a non-active window? I mean, like the ControlSend command , but with the hardware level send mode that the DD library provides. Also, thanks for sharing this amazing library, keep up the good work!

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 13 Mar 2017, 00:49
by tmplinshi
@legitdisturbed I don't think that is possible for any hardware-level keyboard library.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 15 Mar 2017, 19:33
by raskun
I know its kinda out of topic, but do you know how to implement this with c#? I tried downloading and checking the solution, but whenever I've tried to bind the dll, it was always failed.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 16 Mar 2017, 03:02
by tmplinshi
@raskun I don't know C#. But make sure you run the program as admin, and using the correct dll file.

32-bit Windows: "DD\32\ddx32.dll"
64-bit Windows, 64-bit exe: "DD\64\ddx64.64.dll"
64-bit Windows, 32-bit exe: "DD\64\ddx64.32.dll"

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 17 May 2017, 10:27
by rebecca
https://i.gyazo.com/8e8139a1764e7951d2a ... 9ee685.png

how come when i try to run, i get that error?

#Include, class_DD.ahk
SetWorkingDir %A_ScriptDir%

r::DD._key_press("Numpad5")

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 17 May 2017, 10:37
by masheen
tmplinshi wrote:I've updated the dlls to latest version (71598), and now works again.
U are best. I'm looking this driver about month.
Can u do anything like ControlSend?
like

dd.sendKey("F1", hwnd)

Sorry for my english

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 18 May 2017, 23:36
by tmplinshi
@rebecca I don't know.

@masheen It only works on foreground window.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 10 Aug 2017, 17:37
by lolkaru
Guys, how to fix DLL errors? I wrote to the mail, but he didn't answer me. Can there be an alternative to this? With the mousemove. Thx.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 12 Aug 2017, 17:20
by RedPowerRanger
Hey Guys!
For the people getting the error (https://i.gyazo.com/8e8139a1764e7951d2a ... 9ee685.png) on script launch its because windows 10 and 8.1 blocks the input because a signed driver is required. The work around to this problem is to disable "Secure Boot" because windows 10 and 8.1 uses this mode to load drivers. Thus if a driver is unsigned its flag as maybe harmful and not loaded.
Secure boot can be disabled in the BIOS under the boot options.
Hope i Helped! :D

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 14 Aug 2017, 09:47
by evilC
Is Interception not doing the same thing as DD?
Interception has a signed driver and is completely free.

Re: Class_DD - WingRing0 alternative, a vitual keyboard/mouse library

Posted: 14 Aug 2017, 23:35
by lolkaru
RedPowerRanger wrote:Hey Guys!
For the people getting the error (https://i.gyazo.com/8e8139a1764e7951d2a ... 9ee685.png) on script launch its because windows 10 and 8.1 blocks the input because a signed driver is required. The work around to this problem is to disable "Secure Boot" because windows 10 and 8.1 uses this mode to load drivers. Thus if a driver is unsigned its flag as maybe harmful and not loaded.
Secure boot can be disabled in the BIOS under the boot options.
Hope i Helped! :D
Wow, nice info. Thx.