请教:为何编译时不加/EHsc会被当成木马杀掉?
大神们好,小弟学习C++时,自己写的小测试程序被360当成木马杀掉了,就是下面这段代码:
我尝试在编译时添加/EHsc,然后程序可以正常运行了……

当然也不是每次都出现这种情况,我以前也经常偷懒在编译时不加/EHsc,大部分情况下还是没问题的。这次用这段代码时出问题了,特意来这儿请教一下……
大神们在图中也能看到我使用的编译工具和方法。看了代码,肯定不是什么木马程序,而且在virscan.org上扫描也一切正常,只是360报毒了。我们也不必讨论360的问题,只是从我们程序员自身出发来看,我这样做有什么隐患,哪里的行为有点像木马了。
EHsc的解释在网上也查过,看不大懂,呵呵……貌似一般情况下不加它也没什么问题。这个懒到底能不能偷呢?还望大神们不胜赐教!
[解决办法]
添加信任了 - -
[解决办法]
添加信任后,每次重新编译又会报木马,有木有?
而且,这种情况也不是每个项目都会遇到
只有一个办法:干掉360换其他的。
[解决办法]
解铃还须系铃人。
[解决办法]
360的 QVM 系列“木马”都是瞎猜的
[解决办法]
strcpy(this->name, name);
很容易溢出
[解决办法]
strcpy(this->name, name);
这句话容易产生溢出,可能是你的程序的确出现了缓冲区溢出,
360判断为木马利用缓冲区溢出执行其他行为。
多好的360啊,连代码健壮性都帮你检查出来了,赶紧修改自己的代码吧。
[解决办法]
改用strcpy_s