-// combines value and key name (uses static buffer!)
-static const wxChar *GetFullName(const wxRegKey *pKey,
- const wxChar *szValue = NULL);
+// combines value and key name
+static wxString GetFullName(const wxRegKey *pKey);
+static wxString GetFullName(const wxRegKey *pKey, const wxString& szValue);
+
+// returns "value" argument of wxRegKey methods converted into a value that can
+// be passed to win32 registry functions; specifically, converts empty string
+// to NULL
+static inline const wxChar *RegValueStr(const wxString& szValue);