我知道为什么我的代码片段在使用strcpy_s时抛出异常"Buffer is too small"
但是如果我执行strcpy或CopyMemory没有问题?
WindowClass(LPCTSTR pszClassName, WNDPROC pfnWndProc) : m_pszClassName(0)
{
...
if( RegisterClass(&wc) )
{
size_t cbClassName = strlen(pszClassName);
m_pszClassName = (LPTSTR)LocalAlloc(LPTR, cbClassName + 1);
if( m_pszClassName )
{
//strcpy(m_pszClassName, pszClassName);
strcpy_s(m_pszClassName, cbClassName, pszClassName);
//CopyMemory(m_pszClassName, pszClassName, cbClassName);
}
else
{
UnregisterClass(pszClassName, hinst);
}
}
}
目标是没有UNICODE的VS2012上的Win7x64。