以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助:如何生成dll文件引入foxtable  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158981)

--  作者:水墨青花
--  发布时间:2020/12/9 10:05:00
--  求助:如何生成dll文件引入foxtable
老师您好:

钉钉的加解密库有两个cs文件,一个cs文件引用了另一个cs文件。我把两个cs文件都拷贝到了我新建的 类库项目下,但是生成dll的时候,报错说无法找到被引用的cs文件中的类。
请问,这样生成dll文件有什么问题吗?该如何操作?

谢谢!

--  作者:有点蓝
--  发布时间:2020/12/9 10:19:00
--  
类库项目里没有添加这2个文件吧
--  作者:水墨青花
--  发布时间:2020/12/9 12:00:00
--  
抱歉,可能是我没有说清楚。  钉钉 DingTalkCrypto.cs 文件中用到了如下 引用,命名空间为 DTCrypto:
using System;
using System.Text;
using System.Security.Cryptography;
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using System.Text.Json.Serialization;

我用VS生成 dll文件时,debug文件夹下生成了下列dll:  
DTCryptor.dll
Microsoft.Bcl.Aysnclnterfaces.dll
System.Text.Json.dll
System.Text.Encodings.Web.dll
System.Threading.Tasks.Extensions.dll
System.RuntimeCompilerServices.Unsafe.dll
System.Buffers.dll

我应该把这些 dll文件全部引用到 foxtable ,还是有没有办法 只生成一个 DTCryptor.dll 文件,把所有的依赖包都放进去?
十分感谢!

--  作者:水墨青花
--  发布时间:2020/12/9 13:24:00
--  
老师,我一行一行debug了一下 钉钉给的加解密库,发现问题出在signature验证,不知老师能否把foxtable中的 WXBizCryp 代码发给我,我参考着自己写一个钉钉的加解密库,不然debug的时间成本太高了!

十分感谢!

[此贴子已经被作者于2020/12/9 13:29:02编辑过]

--  作者:有点蓝
--  发布时间:2020/12/9 13:47:00
--  
DTCryptor.dll复制到foxtable安装目录引用即可,其它文件不需要。注意vs件里的项目要改为.net 4.0的

微信和钉钉的加解密方式不一样的,抄来也未必有用。如果要看到这里下载:https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Message_encryption_and_decryption_instructions.html



--  作者:水墨青花
--  发布时间:2020/12/9 13:56:00
--  
.net 4.0 里没有 using System.Text.Json; 
我用的是 .net 4.7.2,不可以吗?

--  作者:有点蓝
--  发布时间:2020/12/9 14:05:00
--  
不可以。如果用到json的操作,可以改为引用foxtable安装目录里的Newtonsoft.Json.dll
--  作者:水墨青花
--  发布时间:2020/12/10 13:36:00
--  
可以了,老师!十分感谢!谢谢!