m_editText は CEdit (MFC から) 型です。これは、WinXP (32 ビット) の何百人ものユーザーで何年も問題なく機能していましたが、同じ実行可能ファイルが Win7 (64 ビット) にある場合、一部のユーザーは (strText で) 余分な奇妙な (つまり、拡張された、つまりゴミの) 文字がテキストに追加されます。エディット ボックス コントロール (m_editText) に入力したもの。問題を再現できません。GetLine が編集ボックスに入力された文字のみをコピーすることを確認しました (少なくとも私のマシンでは)。
TCHAR atchBuffer[256] = {0}; // initialize to all nulls
int nChrCount = m_editText.GetLine(0, atchBuffer, 255);
CString strText;
if (nChrCount!=0)
strText = CString(atchBuffer);
これは、WinXP (32 ビット) 上の Visual C++ 6 でコンパイル (デバッグ ビルド) され、MFC 5 は静的にリンクされています。提供された洞察は大歓迎です。