原因及解决方法,参考:
https://blog.csdn.net/nihaoapengyou/article/details/52587986
网上也有对应的Dll提供,但对8.0无效,但我是我没找到。可能是因为7.0版本软件没有对Dll进行强签名,而8.0开始做了。
怎么办?思路还是跟参考的一样。反编译,修改原码,再重新编译成dll 再替换。但可能是因为做了强签名的原因,替换后程序出错了。所以可能现存网上的Dll也是因为签名的问题出错。
签名,我不大熟悉,只能再次借助工具了:.NET Reflector 和 Reflexil
下载 Reflexil 的Relector版 插件:https://www.softpedia.com/get/Programming/Components-Libraries/Reflexil.shtml
在.NET Reflector 中添加插件
工具栏-->Tools-->Add-Ins
引入解压出来的 Reflexil.Reflector.dll 后,Tools 菜单下面即会出来Reflexil 插件工具
接下来用Reflector 打开Dll
打到需要修改的地方:
然后点击:Tools--->Reflexil 工具
将出现Reflexi工具栏:
又由于我IL语言不怎得,所以决定使用Extra 字段来替换
右键修改查询SQL:
将 EXTRA 修改为 COLUMN_COMMENT
再次修改赋值部份:
将 CS_ColumnExtra 修改为 CS_Description
至此修改完毕,保存DLL
如果你也出现了以下意外:
就去把.NET SDK下的 sn.exe。一般可以在这里找到(C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.2 Tools) 拷贝到 插件的目录下:
再次保存:
点击 Register it for.. 按钮,保存Dll 。
然后再使用该DLL 覆盖 CodeSmith 的
完成!!!
再次使用CodeSmith 批量生成,注释出来了。
源文:
https://www.cnblogs.com/Yu-weiz/p/9645242.html