/********************************************************************************************* * Copyright 2003 - Volian Enterprises, Inc. All rights reserved. * Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE * ------------------------------------------------------------------------------ * $Workfile: IniFileIO.cpp $ $Revision: 4 $ * $Author: Jsj $ $Date: 1/07/04 12:08p $ * * $History: IniFileIO.cpp $ * * ***************** Version 4 ***************** * User: Jsj Date: 1/07/04 Time: 12:08p * Updated in $/LibSource/IniFileIO * was not returning found strings * * ***************** Version 3 ***************** * User: Jsj Date: 12/16/03 Time: 11:44a * Updated in $/LibSource/IniFileIO * modified to all use in .net 1.0 and .net 1.1 *********************************************************************************************/ // This is the main DLL file. #include "stdafx.h" #include "IniFileIO.h" using namespace IniFileIO; String *INIFile::GetINIKeyValueStr(String *SectName, String *KeyName, String *DefaultValue, unsigned BufSize, String *IniFileName) { unsigned rtval; LPCTSTR tmpSectName; LPCTSTR tmpKeyName; LPCTSTR tmpDefaultValue; LPSTR tmpReturnBuff; LPCTSTR tmpIniFileName; ValueString = new String(NULL,BufSize+1); tmpSectName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(SectName))); tmpKeyName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(KeyName))); tmpDefaultValue = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(DefaultValue))); tmpReturnBuff = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(ValueString))); tmpIniFileName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(IniFileName))); rtval = GetPrivateProfileString(tmpSectName,tmpKeyName,tmpDefaultValue,tmpReturnBuff,BufSize,tmpIniFileName); ValueString = new String(tmpReturnBuff); return ValueString; } bool INIFile::WriteINIKeyValueStr(String *SectName, String *KeyName, String *KeyValue, String *IniFileName) { bool rtval; LPCTSTR tmpSectName; LPCTSTR tmpKeyName; LPCTSTR tmpKeyValue; LPCTSTR tmpIniFileName; tmpSectName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(SectName))); tmpKeyName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(KeyName))); tmpKeyValue = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(KeyValue))); tmpIniFileName = static_cast(static_cast(Marshal::StringToCoTaskMemAnsi(IniFileName))); rtval = WritePrivateProfileString(tmpSectName,tmpKeyName,tmpKeyValue,tmpIniFileName); Marshal::FreeCoTaskMem(System::IntPtr((void*)tmpSectName)); Marshal::FreeCoTaskMem(System::IntPtr((void*)tmpKeyName)); Marshal::FreeCoTaskMem(System::IntPtr((void*)tmpKeyValue)); Marshal::FreeCoTaskMem(System::IntPtr((void*)tmpIniFileName)); return rtval; }