在我们的项目中,我们通过使用 .Net CorProfiler API 重写 IL 来在不同位置注入代码。一切正常。现在,出于记录目的,我们已经开始使用 FILE* 打开文件,如下所示 -
FILE* ptLogFile = _fsopen(file_name, "a+t, ccs=UTF-8", _SH_DENYWR);
fwrite(message, sizeof(wchar_t), wcslen(message), ptLogFile);
fflush(ptLogFile);
通过引入上面的代码,我没有得到任何错误,但同时代码注入在某些情况下也不起作用。但是,它继续适用于其他一些情况。通过删除上面的代码,一切都开始按预期工作。
知道 FILE 与 IL 重写之间有什么关系吗?我如何让他们两个一起工作?
更新:任何建议,我该如何调试?