+ if (rFile != "")
+ {
+ hIni = ::PrfOpenProfile(hab, (PSZ)WXSTRINGCAST rFile);
+ if (hIni != 0L)
+ {
+ return (::PrfWriteProfileString( hIni
+ ,(PSZ)WXSTRINGCAST rSection
+ ,(PSZ)WXSTRINGCAST rEntry
+ ,(PSZ)WXSTRINGCAST rValue
+ ));
+ }
+ }
+ else
+ return (::PrfWriteProfileString( HINI_PROFILE
+ ,(PSZ)WXSTRINGCAST rSection
+ ,(PSZ)WXSTRINGCAST rEntry
+ ,(PSZ)WXSTRINGCAST rValue
+ ));
+ return FALSE;
+}
+
+bool wxWriteResource(
+ const wxString& rSection
+, const wxString& rEntry
+, float fValue
+, const wxString& rFile
+)
+{
+ wxChar zBuf[50];
+
+ wxSprintf(zBuf, "%.4f", fValue);
+ return wxWriteResource( rSection
+ ,rEntry
+ ,zBuf
+ ,rFile
+ );
+}
+
+bool wxWriteResource(
+ const wxString& rSection
+, const wxString& rEntry
+, long lValue
+, const wxString& rFile
+)
+{
+ wxChar zBuf[50];
+
+ wxSprintf(zBuf, "%ld", lValue);
+ return wxWriteResource( rSection
+ ,rEntry
+ ,zBuf
+ ,rFile
+ );
+}
+
+bool wxWriteResource(
+ const wxString& rSection
+, const wxString& rEntry
+, int lValue
+, const wxString& rFile
+)
+{
+ wxChar zBuf[50];
+
+ wxSprintf(zBuf, "%d", lValue);
+ return wxWriteResource( rSection
+ ,rEntry
+ ,zBuf
+ ,rFile
+ );
+}
+
+bool wxGetResource(
+ const wxString& rSection
+, const wxString& rEntry
+, wxChar** ppValue
+, const wxString& rFile
+)
+{
+ HAB hab = 0;
+ HINI hIni = 0;
+ wxChar zDefunkt[] = _T("$$default");
+ char zBuf[1000];
+
+ if (rFile != "")
+ {
+ hIni = ::PrfOpenProfile(hab, (PSZ)WXSTRINGCAST rFile);
+ if (hIni != 0L)
+ {
+ ULONG n = ::PrfQueryProfileString( hIni
+ ,(PSZ)WXSTRINGCAST rSection
+ ,(PSZ)WXSTRINGCAST rEntry
+ ,(PSZ)zDefunkt
+ ,(PVOID)zBuf
+ ,1000
+ );
+ if (zBuf == NULL)
+ return FALSE;
+ if (n == 0L || wxStrcmp(zBuf, zDefunkt) == 0)
+ return FALSE;
+ zBuf[n-1] = '\0';
+ }
+ else
+ return FALSE;
+ }
+ else
+ {
+ ULONG n = ::PrfQueryProfileString( HINI_PROFILE
+ ,(PSZ)WXSTRINGCAST rSection
+ ,(PSZ)WXSTRINGCAST rEntry
+ ,(PSZ)zDefunkt
+ ,(PVOID)zBuf
+ ,1000
+ );
+ if (zBuf == NULL)
+ return FALSE;
+ if (n == 0L || wxStrcmp(zBuf, zDefunkt) == 0)
+ return FALSE;
+ zBuf[n-1] = '\0';
+ }
+ strcpy((char*)*ppValue, zBuf);
+ return TRUE;