然后我再别的程序中调用该接口加密一个字符串。然后在该程序中将该字符串也进行md5加密,然后将两者进行比较,当dll是Debug,并且调用dll的程序也是Debug的时候,两者的得到的值是一样的,当只要其中一个是Release的时候,就不同,搞了一天也不知道是怎么回事?
我用的是md5.h 和md5.c源文件,有没有人遇到过同样的问题?着急呀!
8 个解决方案
#1
你不会是启动了/O2优化吧?如果这样的话得出来的结果就算不一样也不足为奇……
#2
初始值?
#3
编译环境不同,可能进行了一些优化
#4
嘿嘿
GetMd5(LPCSTR str)???
输入是str,输出呢?
GetMd5(LPCSTR str)???
输入是str,输出呢?
#5
BSTR GetMd5(LPCSTR str)
str是输入,返回BSTR型
有可能是启动了/O2,我再试试看,行不行
str是输入,返回BSTR型
有可能是启动了/O2,我再试试看,行不行
#6
ding
#7
问题解决了,好像也不是O2的问题,好像和Debug Info里面的设置有关,开始的时候Debug Info里面设的是Program Database,我后来改为None,重新编译以下就好了,谢谢各位!给分了
#8
谢谢
#1
你不会是启动了/O2优化吧?如果这样的话得出来的结果就算不一样也不足为奇……
#2
初始值?
#3
编译环境不同,可能进行了一些优化
#4
嘿嘿
GetMd5(LPCSTR str)???
输入是str,输出呢?
GetMd5(LPCSTR str)???
输入是str,输出呢?
#5
BSTR GetMd5(LPCSTR str)
str是输入,返回BSTR型
有可能是启动了/O2,我再试试看,行不行
str是输入,返回BSTR型
有可能是启动了/O2,我再试试看,行不行
#6
ding
#7
问题解决了,好像也不是O2的问题,好像和Debug Info里面的设置有关,开始的时候Debug Info里面设的是Program Database,我后来改为None,重新编译以下就好了,谢谢各位!给分了
#8
谢谢