Continue using SendKeys if it works.
I am 99.9% sure that it is not possible using DirectX.
It might be possible to modify InputKeys to make this possible, but I'm not sure. It would probably be a large amount of work and it is not a priority for me.
Another possible method, which might be useful depending on your situation is to use the clipboard to paste text.
<?xml version="1.0" encoding="utf-16"?>
<!--VoxCommando 2.2.4.3-->
<command id="293" name="введите что-либо" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>System.SetClipboardText</cmdType>
<params>
<param>Мой план идет в соответствии с планом.</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>InputKeys.Send</cmdType>
<params>
<param>{CONTROL}({v})</param>
</params>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>введите что-либо</phrase>
</command>