reg.cpp

来自「lwip tcp/ip 协议栈 adsp BF533 DSP 移植 用 visu」· C++ 代码 · 共 57 行

CPP
57
字号
#include "stdafx.h"
#include "TCPIPplugin.h"
#include "TCPIPpluginifce.h"
#include "classtemplate.h"

#include <windows.h>

static char  ADI_TOOLS_TCPIP_RegistryKey[] = "Software\\Analog Devices\\VisualDSP++ 3.5 for 16-Bit Processors\\Components\\Plugins\\TCP/IP Configuration Manager";
static char  ADI_TOOLS_TCPIPConfigFile[] = TEXT("TCPConfigFile");

void SaveConfigFileIntoRegistry(char *in_filename)
{
	HKEY hTCPIPKey;
	DWORD dwResult;

	if(RegCreateKeyEx(HKEY_CURRENT_USER,ADI_TOOLS_TCPIP_RegistryKey,0,"REG_SZ",REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hTCPIPKey,&dwResult) != ERROR_SUCCESS)
	{
		// creating registry entry failed..returning.
		return;
	}
	
	if(in_filename != NULL)
		RegSetValueEx(hTCPIPKey,ADI_TOOLS_TCPIPConfigFile,0,REG_SZ,(unsigned char*)in_filename,strlen(in_filename));

	RegCloseKey(hTCPIPKey);
}

// Copies the last file form registry to the path supplied 
//
bool GetConfigFileFromRegistry(char *out_filename)
{
	BYTE  temp_filename[1024];
	HKEY  hTCPIPKey;
	DWORD dwType;
	DWORD dwRead;

	if((RegOpenKeyEx(HKEY_CURRENT_USER,ADI_TOOLS_TCPIP_RegistryKey,0,KEY_ALL_ACCESS  | KEY_QUERY_VALUE
		,&hTCPIPKey) != ERROR_SUCCESS))
	{
		// nothing to load..copy null and return..
		*out_filename = '\0';
		return false;
	}
	
	if(out_filename != NULL)
	{
		if((RegQueryValueExA(hTCPIPKey,"TCPConfigFile",NULL,&dwType,temp_filename,&dwRead) != ERROR_SUCCESS))
		{
			*out_filename = '\0';
			return false;
		}
		strcpy(out_filename,(char*)temp_filename);
	}

	RegCloseKey(hTCPIPKey);
	return true;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?