コード例 #1
0
ファイル: wf_interface.c プロジェクト: HUTTAMI/FreeRDP
int freerdp_client_save_settings_to_rdp_file(wfContext* wfc, char* filename)
{
	if (!filename)
		return 1;

	if (wfc->instance->settings->ConnectionFile)
	{
		free(wfc->instance->settings->ConnectionFile);
	}

	wfc->instance->settings->ConnectionFile = _strdup(filename);

	// Reuse existing rdpFile structure if available, to preserve unsupported settings when saving to disk.
	if (wfc->connectionRdpFile == NULL)
	{
		wfc->connectionRdpFile = freerdp_client_rdp_file_new();
	}

	if (!freerdp_client_populate_rdp_file_from_settings(wfc->connectionRdpFile, wfc->instance->settings))
	{
		return 1;
	}

	if (!freerdp_client_write_rdp_file(wfc->connectionRdpFile, filename, UNICODE));
	{
		return 2;
	}

	return 0;
}
コード例 #2
0
ファイル: client.c プロジェクト: AMV007/FreeRDP
int freerdp_client_settings_write_connection_file(const rdpSettings* settings, const char* filename, BOOL unicode)
{
	rdpFile* file;

	file = freerdp_client_rdp_file_new();

	if (!freerdp_client_populate_rdp_file_from_settings(file, settings))
		return -1;

	if (!freerdp_client_write_rdp_file(file, filename, unicode))
		return -1;

	freerdp_client_rdp_file_free(file);

	return 0;
}
コード例 #3
0
ファイル: client.c プロジェクト: Shivette/FreeRDP
int freerdp_client_write_connection_file(rdpContext* context, const char* filename, BOOL unicode)
{
    rdpFile* file;
    int status = -1;

    file = freerdp_client_rdp_file_new();
    if (freerdp_client_populate_rdp_file_from_settings(file, context->settings))
    {
        if (freerdp_client_write_rdp_file(file, filename, unicode))
        {
            status = 0;
        }
    }

    freerdp_client_rdp_file_free(file);

    return status;
}