DWORD SetRegistry(char *szRegPort, char *szKey, char *szValue)
{
    char    ValueName[128];
    HKEY    hkPort;
    DWORD    cbData = 256;
    DWORD    retCode, dwDisp;
    if ((retCode=RegCreateKeyEx(HKEY_LOCAL_MACHINE, szRegPort, 0, NULL, REG_OPTION_NON_VOLATILE,
                                KEY_ALL_ACCESS, NULL, &hkPort, &dwDisp)) == ERROR_SUCCESS)
    {
        lstrcpy(ValueName, szKey);
        retCode = RegSetValueEx(hkPort,                    // Key handle returned from RegOpenKeyEx.
                                ValueName,                // Name of value.
                                0,                        //reserved , must be null
                                REG_SZ,                    // Type of data.
                                (PBYTE)szValue,            // Data buffer.
                                strlen(szValue));        // Size of data buffer.
        RegCloseKey(hkPort);
    }
    return retCode;
}