首先,我们在这里讨论Keepass
相关文件是:KeePass-2.19-Source\KeePass\Native\NativeMethods.cs
代码......好吧,就是文件本身。但这是一个片段:
[DllImport("KeePassLibC32.dll", EntryPoint = "TransformKey256")]
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool TransformKey32(IntPtr pBuf256,
IntPtr pKey256, UInt64 uRounds);
现在的问题是,Java不支持Attribute Targets。如何将文件移植到Java中? 可能吗?如果是这样......怎么样?
答案 0 :(得分:0)
据我所知,Java也不支持P / Invoke,因此属性目标对你没有帮助......你应该能够用JNI实现相同的结果,但这段代码不能字面意思地从C#翻译。
答案 1 :(得分:0)
Java 支持支持属性目标(但它们是“注释”目标):http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/annotation/Target.html
但这对你没什么帮助...除非你打算发明你自己的DllImport,它以某种方式使用JNI ...通过像JSR-299这样的东西