jjzjj

java - 如何通过 JNA 检查全局可逆加密?

我正在尝试通过JNA(JavaNativeAccess)以编程方式检索Windows中ReversibleEncryption设置的全局值。我可以通过JNA从全局用户密码策略中读取其他值,例如执行密码历史记录密码最长使用期限最低密码使用期限最小密码长度但是没有关于如何在Java中具体获取可逆加密值的信息?我试图谷歌但无济于事。有人知道吗? 最佳答案 可逆加密设置在RSOP_SecuritySettingBoolean中的WMI中可用。类,使用键ClearTextPassword.可以通过命令行(例如wmic/NAMESPACE:\\

java - 在控制面板中查找图标名称

有没有办法获取Windows控制面板中图标的名称,并找出它们的坐标?还有一个问题-如果我正在运行一个包含按钮的应用程序,是否有可能获取按钮的名称,如string? 最佳答案 http://msdn.microsoft.com/en-us/library/ee330741(v=VS.85).aspx列出每个控制面板项目的“规范名称”。例如,Microsoft.DateAndTime用于设置您的日期和时间。http://msdn.microsoft.com/en-us/library/cc144191(v=VS.85).aspx展示了如

c++ - 从 ShellExecute 获取 PID

我正在从ShellExecuteEx启动一个进程,我确实需要获取ProcessID(这是此类要求的一部分)。不知何故,所有重要的SHELLEXECUTEINFO都返回null。因此,例如,如果我使用此代码:exInfo.lpVerb="open";exInfo.lpFile="C:\\Windows\\system32\\cmd.exe";exInfo.nShow=5;ShellExecuteExA(exInfo);它启动了CMD.exe。但现在我需要得到它的PID。exInfo.hwnd返回0,exInfo.hProcess返回null。这是正常行为吗?我真的不想使用CreatePr

java - JNA:结构类中getFieldOrder()的目的是什么

我正在尝试调用dll文件中的C++函数,C++函数通过引用将结构对象作为参数,函数将在该函数中赋值,所以在我的java应用程序中,为了将结构对象传递给函数,我确实是这样写的:interfaceSomeInterfaceextendsLibrary{SomeInterfaceinstance=(SomeInterface)Native.loadLibrary("mydll",SomeInterface.class);intsomeFunction(StructClass.ByReferencestrobject);publicstaticclassStructClassextendsSt

java - JNA 二维数组

我尝试用JNA在C中调用一个short**。C看起来像这样:voidcompute(short**in,introw,intcol){for(inti=0;i从JNA传递short[][]无效。JNA文档说“要映射native多维数组,请使用一维Java数组”,但它不起作用。调用时'nativeLib.compute(newshort[]{1,2,3,4},2,2);我得到:java.lang.Error:com.sun.jna.Native.invokeVoid(NativeMethod)上的无效内存访问似乎需要一个PointerByReference,我尝试用包含短值的Pointe

java - JNA - 在从 DLL 传回的 C++ 实例上调用方法

假设我有一个带有单个导出方法的C++DLL,例如:CustomerProcessor*getInstance();即它只是返回实际包含我需要调用的方法的类的实例。我知道我可以使用JNA(扩展com.sun.jna.Library)将getInstance()方法映射到Java中的一个类,将返回的CustomerProcessor实例存储在com.sun.jna.Pointer中。然后我能否以某种方式将它映射到CustomerProcessor类,以便我可以调用它的方法(如果可以,如何调用)? 最佳答案 对于任意type*functi

java - EasyMock 和 JNA - 模拟通用返回类型

我正在尝试使用EasyMock模拟以下JNA调用convInterface=(ConvInterface)Native.loadLibrary(libraryLocation,ConvInterface.class);使用这个测试方法@TestpublicvoidtestLib(){Capture>myClassCapture=EasyMock.newCapture();PowerMock.mockStatic(Native.class);EasyMock.expect(Native.loadLibrary(EasyMock.isA(String.class),EasyMock.cap

java - JNA C DLL 调试方法?

我有一个DLL,它接受编码字符串输入并对其进行解码。DLL是使用Codeblocks和mingw64在Win764位上制作的。C代码单独运行良好,但是当我在while循环中使用相同的字符串通过JNA运行它时,它被正确解码了大约70%的调用,而其余的则不正确。我想调试这种情况,但我不确定在Java代码将控制权移交给JNA之后该怎么做。或者,任何关于在哪里查看的想法也会有所帮助。C和JNA中的方法签名如下,Java:intDecrypt_Blk(byte[]expkey,byte[]in,intsize,byte[]out);C:__declspec(dllexport)intDecryp

java - 如何在JNA中制作结构?

当我运行下面的代码时出现这个错误;Exceptioninthread"AWT-EventQueue-0"java.lang.Error:Structure.getFieldOrder()onclassjavaapplication2.NewJFrame$APPBARDATAreturnsnames([cbSize,hWnd,jCallbackMessage,jEdge,rc,sParam])whichdonotmatchdeclaredfieldnames([])atcom.sun.jna.Structure.getFields(Structure.java:872)atcom.sun

java - 在 OSGi 包中加载 DLL(使用 JNA)

OSGi找不到我的DLL文件,我似乎无法弄清楚原因。目前我的包的根目录下有DLL文件(foo.dll),我也试过将它放在libs目录中。有问题的包的list看起来像这样:Manifest-Version:1.0Bundle-ManifestVersion:2Bundle-Name:foobundleBundle-SymbolicName:com.foo.barBundle-Version:1.0.0Bundle-Vendor:meImport-Package:com.sun.jna,com.sun.jna.ptr,com.sun.jna.win32Export-Package:com.