我的遗留MFC应用程序打开自己的可执行文件进行读取(计算其哈希码以使篡改更加困难)。为此,它使用
CFile f( sExecFileName, CFile::modeRead | CFile::typeBinary );
当我使用/ clr标志编译应用程序,或者甚至其中一小部分不包含此代码时,此行开始使用couse CFileException
抛出CFileException::sharingViolation
。仅当我编译“调试”而不是“发布”,但即使没有附加调试器,也会发生此行为。是什么导致这种情况以及如何解决?
免责声明:我的C ++几乎和我的中文一样好(而且我不是来自中国)。对不起,如果这个问题很简单。
答案 0 :(得分:0)
正如Hand Passant在评论中所述,我错过了CFile::shareDenyNone
。