//#ifdef HAVE_CONFIG_H //#include "config.h" //#endif // //#include //#include //#include // //#include //#include // //#include "../xf_client.h" //#include "../xfreerdp.h" // //#include //#include //#include //#include // //#include "xrdp.h" // //int free_rdp_connect(int argc, char **argv) //{ // int rc = 1; // int status; // HANDLE thread; // xfContext *xfc; // DWORD dwExitCode; // rdpContext *context; // rdpSettings *settings; // RDP_CLIENT_ENTRY_POINTS clientEntryPoints; // // ZeroMemory(&clientEntryPoints, sizeof(RDP_CLIENT_ENTRY_POINTS)); // clientEntryPoints.Size = sizeof(RDP_CLIENT_ENTRY_POINTS); // clientEntryPoints.Version = RDP_CLIENT_INTERFACE_VERSION; // // RdpClientEntry(&clientEntryPoints); // // context = freerdp_client_context_new(&clientEntryPoints); // if (!context) // return 1; // // settings = context->settings; // xfc = (xfContext*) context; // // status = freerdp_client_settings_parse_command_line(context->settings, argc, argv, FALSE); // if (status) // { // rc = freerdp_client_settings_command_line_status_print(settings, status, argc, argv); // // if (settings->ListMonitors) // xf_list_monitors(xfc); // // goto out; // } // // if (freerdp_client_start(context) != 0) // goto out; // // thread = freerdp_client_get_thread(context); // // WaitForSingleObject(thread, INFINITE); // GetExitCodeThread(thread, &dwExitCode); // rc = xf_exit_code_from_disconnect_reason(dwExitCode); // // freerdp_client_stop(context); // // out: freerdp_client_context_free(context); // // return rc; //}