我用了
CString strAo;
m_OutputAudioDev.GetWindowText(strAo);
strAo.Format(TEXT("%s\0"), strAo);
WritePrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"),
strAo.GetBuffer(256),TEXT("E:\\Device.ini"));把我要保存的字符串放在了strAo中,又使用
TCHAR szNum[256];
GetPrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"),
TEXT("C-Media Wave Device"), szNum, 256, TEXT("E:\\Device.ini"));
读出保存的strAo中的内容给szNum,之后做了强制转换CString(szNum)(我测试过这里得转换出了问题)。
之后我想用lstrcmp(szNum,friendName)==0这里就内存错误了
(其中friendly name是CString类型)我是一只VC才鸟 希望大家可以积极给我答复
期待你们得正确的答案
谢谢
CString strAo;
m_OutputAudioDev.GetWindowText(strAo);
strAo.Format(TEXT("%s\0"), strAo);
WritePrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"),
strAo.GetBuffer(256),TEXT("E:\\Device.ini"));把我要保存的字符串放在了strAo中,又使用
TCHAR szNum[256];
GetPrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"),
TEXT("C-Media Wave Device"), szNum, 256, TEXT("E:\\Device.ini"));
读出保存的strAo中的内容给szNum,之后做了强制转换CString(szNum)(我测试过这里得转换出了问题)。
之后我想用lstrcmp(szNum,friendName)==0这里就内存错误了
(其中friendly name是CString类型)我是一只VC才鸟 希望大家可以积极给我答复
期待你们得正确的答案
谢谢
直接用==就可以
我个人认为是我读取×.ini文件之后出来问题 大家快来帮帮我啊~~~
m_OutputAudioDev.GetWindowText(strAo);
WritePrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"),
(LPCTSTR)strAo,TEXT("E:\\Device.ini"));
方法如下:
GetPrivateProfileString(TEXT("AudioPlay"), TEXT("AudioPlayDevice"), TEXT("C-Media Wave Device"), szNum, 256, TEXT("E:\\Device.ini"));
m_Audioplay.Format("%s",szNum);
就是在读出时的错误了~之前用的Format错误了不过还是谢谢大家的帮助~