2015-02-16 14:16:54 +03:00
|
|
|
|
|
|
|
#include <winpr/crt.h>
|
|
|
|
#include <winpr/error.h>
|
|
|
|
#include <winpr/wtsapi.h>
|
|
|
|
#include <winpr/input.h>
|
|
|
|
#include <winpr/environment.h>
|
|
|
|
|
|
|
|
int TestWtsApiExtraStartRemoteSessionEx(int argc, char* argv[])
|
|
|
|
{
|
|
|
|
BOOL bSuccess;
|
|
|
|
ULONG logonId = 0;
|
|
|
|
char logonIdStr[10];
|
|
|
|
|
2016-08-10 13:49:36 +03:00
|
|
|
bSuccess = GetEnvironmentVariableA("TEST_SESSION_LOGON_ID", logonIdStr, 10);
|
2015-02-16 14:16:54 +03:00
|
|
|
if(bSuccess)
|
|
|
|
{
|
|
|
|
sscanf(logonIdStr, "%u\n", &logonId);
|
|
|
|
}
|
|
|
|
|
|
|
|
bSuccess = WTSStartRemoteControlSessionEx(NULL, logonId, VK_F10, REMOTECONTROL_KBDSHIFT_HOTKEY|REMOTECONTROL_KBDCTRL_HOTKEY, REMOTECONTROL_FLAG_DISABLE_INPUT);
|
|
|
|
|
|
|
|
if (!bSuccess)
|
|
|
|
{
|
2016-12-14 00:47:08 +03:00
|
|
|
printf("WTSStartRemoteControlSessionEx failed: %"PRIu32"\n", GetLastError());
|
2015-02-16 14:16:54 +03:00
|
|
|
return -1;
|
|
|
|
}
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|