| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 
 | // Fonction permettant de transformer une chaîne de System::String en std::string
std::string ToStdString(String ^_strString)
{
    IntPtr pString =  System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(_strString);
    std::string stdString((const char*) pString.ToPointer());
    System::Runtime::InteropServices::Marshal::FreeHGlobal(pString);
    return stdString;
}
 
std::string ToStdStringEOM(String ^_strString)
{
    pin_ptr<const wchar_t> strWideString = PtrToStringChars(_strString);
    int iSizeString = (_strString->Length+1) * 2;
    char * pszBuffer = new char[iSizeString];
    int t = WideCharToMultiByte(CP_OEMCP, 0, strWideString, iSizeString, NULL, 0, NULL, NULL); 
    WideCharToMultiByte(CP_OEMCP, 0, strWideString, iSizeString, pszBuffer, t, NULL, NULL);
 
    std::string strRet(pszBuffer);
    delete []pszBuffer;
 
    return strRet;
} | 
Partager