1、
基本就是 通过 JAVA --> C/C++ --> C#的DLL
2、
(1)、自己写 JNI与 C#的DLL 通信
http://www.cnblogs.com/yinhaiming/articles/1712463.html
(2)、使用别人的 现有的 东西
(2.1)、使用 CLE,要安装 starcore_win32.2.0.3.exe
http://blog.csdn.net/srplab1/article/details/8631339
(2.2)、使用 java4net 和 JavaTwain
http://my.oschina.net/yushulx/blog/286390
http://bbs.csdn.net/topics/390624108/ ==> 这个貌似 只用了 java4net...
3、
VC 与 C#的DLL 通信
3.1、貌似使用的是 托管的 C++
http://www.2cto.com/kf/201505/401650.html
4、
VC++ 调用 C#生成DLL的多种方法
http://download.csdn.net/detail/tohjs/5110443
5、
ZC: 这里 C++ 分了 托管 和 非托管
非托管VC调用 C#,貌似需要 函数CLRCreateInstance 这个函数Linux里面没有吧...