草庐IT

DLL_EXPORT

全部标签

java - 我的 dll 代码可以从 exe 文件运行,但无法从 Java loadLibrary 加载

我创建了一个C++模块来构建到一个共享库文件中,然后使用JNI从Java调用它。我有2个环境,Windows和Unix,我有一个C++可执行程序和一个Java程序,我只是为每个环境重新编译。当我在Unix中编译我的tester.exe程序并使用方法运行它时从我的图书馆(.so)它工作正常。当我在Unix中编译我的Java程序并加载我的库(.so)时Java的loadLibrary,它工作正常。当我在Windows中编译我的tester.exe程序并使用它运行时我的库(.dll)中的方法工作正常。就像unix一样版本。当我在Windows中编译我的Java程序并使用Java的loadLi

java - 可以在调用 System.LoadLibrary 时捕获 UnsatisfiedLinkError 以回退到不同的 DLL 吗?

在启动时,我希望我的Java程序加载一个DLL,该DLL应该位于java.library.path定义的路径上。但是,如果缺少该DLL,我希望我的程序回退到加载不同的DLL。如果System.LoadLibrary找不到DLL文件,它会抛出UnsatisfiedLinkError。UnsatisfiedLinkError是Error的子类,而不是Exception的子类。许多评论表明捕获错误是不好的做法。在这种情况下可以做这样的事情吗?try{System.loadLibrary("myLibrary");}catch(UnsatisfiedLinkErrore){try{System

解决因缺少MSVBVM50.DLL无法启动问题

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个MSVBVM50.DLL文件进行安装(前提是找到适合的版本),当我们执行某一个.exe程序时,相应的DLL文件就会被调用,因此安装好之后就能重新打开你的软件或游戏了.那么出现MSVBVM50.DLL丢失要怎么解决?一、手动从本站下载dll文件1、从下面列表下载MSVBVM50.DLL文件32位文件:MSVBVM50.DLL5.2.82.442、将下载的文件放入到你要运行的软件或者游戏的安装所在文件夹之中,

QT QPluginLoader 插件开发 ui界面打包dll

 将项目模块化,每一个模块单独开发,模块的组成形成最终的主程序,点击左侧按钮就会弹出对应的插件应用,每一个子窗口都是单独的dll插件,灵活,升级,下载,卸载。效果:  打开QTCreator新建插件开发项目 下一步后选择Qt Plugin开发添加依赖库,在.pro里 QT+=coreguigreaterThan(QT_MAJOR_VERSION,4):QT+=widgetsTEMPLATE=libCONFIG+=c++17 删掉自带的全部文件 新建AbstractPlugin.h  抽象接口类,带Ui界面的插件接口    #ifndefABSTRACTPLUGIN_H#defineABSTRA

找不到mfc110.dll,无法执行代码,可以使用这3种方法进行修复

Mfc110.dll是MicrosoftVisualStudio2012应用程序中使用的一个动态链接库,也称为MicrosoftFoundationClasses应用程序框架库。这个库提供了一组可以用来创建Windows桌面应用程序的类和函数。当我们打开运行软件的时候出现找不到mfc110.dll,无法执行代码,可以使用这3种方法进行修复。 Mfc110.dll可能会因为以下原因造成丢失:恶意软件感染或系统病毒。计算机感染恶意软件或病毒可能会导致文件被删除、破坏或损坏。硬件故障。硬件设备故障可能会导致mfc110.dll文件损坏或丢失,例如磁盘故障、电源故障等。软件安装或卸载中断。在安装或卸载

python - 使用 SWIG 从包装的 cpp 文件创建 DLL

我正在学习如何在Windows上使用SWIG。以下是我的c++代码:/*File:example.cxx*/#include"example.h"#defineM_PI3.14159265358979323846/*Movetheshapetoanewlocation*/voidShape::move(doubledx,doubledy){x+=dx;y+=dy;}intShape::nshapes=0;doubleCircle::area(void){returnM_PI*radius*radius;}doubleCircle::perimeter(void){return2*M_P

解决Windows因丢失vcruntime140.dll文件无法运行程序问题

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个vcruntime140.dll文件进行安装(前提是找到适合的版本),当我们执行某一个.exe程序时,相应的DLL文件就会被调用,因此安装好之后就能重新打开你的软件或游戏了.那么出现vcruntime140.dll丢失要怎么解决?一、手动从本站下载dll文件1、从下面列表下载vcruntime140.dll文件32位文件:vcruntime140.dll14.34.31931.064位文件:vcrunti

python - 我需要 MSVCR90.dll 版本 9.0.21022.8

根据py2exe教程,我发现我需要MSVCR90.dll版本9.0.21022.8才能为python2.6运行它。在哪里可以找到MSVCR90.dll版本9.0.21022.8? 最佳答案 安装VS2008redistrbutablepackage. 关于python-我需要MSVCR90.dll版本9.0.21022.8,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/37071

c# - 将具有非托管导出的 C# DLL 加载到 Python 中

我使用NuGet包构建了一个C#DLL(MyTestDll)UnmanagedExports:[DllExport("Test",CallingConvention=CallingConvention.Cdecl)]publicstaticstringTest(stringname){return"hi"+name+"!";}我通过ctypesDLL导入从Python使用它:path="C:\\Temp\\Test"os.chdir(path)dll=ctypes.WinDLL("MyTestDll.dll")f=dll.Testf.restype=ctypes.c_char_ppri

提示找不到api-ms-win-crt-convert-l1-1-0.dll文件的解决方法

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个api-ms-win-crt-convert-l1-1-0.dll文件进行安装(前提是找到适合的版本),当我们执行某一个.exe程序时,相应的DLL文件就会被调用,因此安装好之后就能重新打开你的软件或游戏了.那么出现api-ms-win-crt-convert-l1-1-0.dll丢失要怎么解决?一、手动从本站下载dll文件1、从下面列表下载api-ms-win-crt-convert-l1-1-0.dl