草庐IT

DLL_EXPORT

全部标签

c - lua5.2在windows中调用c dll

我的C代码如下:skype分析器.h#include"lua.h"#include"lualib.h"#include"lauxlib.h"#include"stdio.h"#include"stdlib.h"//dllexportfuncint_declspec(dllexport)luaopen_skypeAnalyzer(lua_State*L);skype分析器.c#include"skypeAnalyzer.h"#include#includeintrun(lua_State*L){printf("------->>>Hi!%s\n",lua_tostring(L,1));r

c# - 无法启动应用程序,KernelBase.dll 错误

我在Windows7/8x64上运行应用程序时遇到问题,但我可以在Windows10x64上启动。在VisualStudio中,平台目标设置为任何CPU,但它对我没有帮助。我在我的开发机器操作系统上构建的应用程序:Windows10x64Windows日志应用程序错误:Faultingapplicationname:Trainingcharts.exe,version:0.4.3.18,timestamp:0x55f2b40fFaultingmodulename:KERNELBASE.dll,version:6.1.7601.18869,timestamp:0x556366fdExce

c# - DLL 加载通知

当系统中的任何进程加载特定DLL或所有DLL加载事件(我可以过滤掉)时,是否有可能在我的程序中获得通知?就像流程资源管理器如何从所有流程中获取通知一样。为此,我可以使用进程资源管理器,但我想在发生特定DLL加载事件时采取操作(显示弹出窗口)。我也在寻找任何可以为我完成这项工作的开源程序。非常感谢您。 最佳答案 是的,您可以通过Windows的ETW获取图像(.dll、.exe)加载事件(Windows事件跟踪)设施。ETW是一种快速、低开销的日志记录机制,大多数Windows内核都经过检测以发出事件。ETW具有发出事件集的“提供者”

java - 在 Java 中加载 .DLL

我想在Eclipse中调用一个.DLL方法。这是我的代码:classTestJNI1{publicnativevoidLireNoVersion();publicvoida(){System.loadLibrary("tttt.dll");LireNoVersion();}}publicGlobalAction(){this.setBackground(GlobalPreferences.PANEL_BACKGROUND_COLOR);newTestJNI1().a();}问题是我在编译时遇到这个错误:Exceptioninthread"AWT-EventQueue-0"java.la

php - 在 php 中加载 dll 的最佳方法是什么?

我正在服务器端使用CakePHP开发Web应用程序,我需要使用第三方提供的dll来访问他们的平台,所以我没有dll的源代码,但我可以'不要修改它。我对此进行了搜索,但没有找到一种简单的方法来执行此操作。在php中加载dll的最佳方法是什么?我应该构建一个php扩展作为第3方dll的包装器吗?还有其他方法吗?提前致谢。更新我发现我可以将dll用作COM对象,但每次客户端需要部署服务器时我都需要在Windows上注册dll,我想要一个不涉及注册dll的解决方案.更新我尝试注册dll,但出现错误(“未找到入口点DllRegisterServer”),这意味着它可能未被编译为用作COM对象。我

c - Lua 在加载 dll 扩展时崩溃

我正在尝试在Windows上创建一个Luadll扩展。我正在使用Lua5.3。我的编译器来自MinGW,是gcc4.9.3。我的dll扩展的C代码是这样的:#include#includestaticintdub(lua_State*L){constdoublea=lua_tonumber(L,1);lua_pushnumber(L,a*2);return1;}__declspec(dllexport)int__cdeclluaopen_mylib(lua_State*L){printf("One\n");lua_pushcfunction(L,dub);printf("Two\n")

c++ - 如何隐式加载仅签名的 DLL

我有一个与一组dll文件链接的应用程序。我在不通过不安全的LoadLibrary()调用的情况下隐式加载DLL。我正在考虑使用证书文件对DLL进行签名以避免DLL劫持。我怀疑隐式链接如何检查我的DLL是否已签名。 最佳答案 您应该使用MANIFESTDEPENDENCY链接器选项添加list依赖项,并将publicKeyToken设置为用于签署dll的key。例如像这样的东西:/manifestdependancy:type='win32'name='mydll'language='*'publicKeyToken='1234567

.net - 排序 DLL 版本的正确方法是什么

我一直明白版本(例如:1.2.3.4)中的每个数字都被视为常规int值。我们正在使用一些遵循不同约定的第三方DLL,这似乎会导致我们的修补过程出现问题(修补程序不会用新的DLL覆盖旧的DLL)。旧版本的DLL是1.38DLL的新版本是1.4我理解为1.4我讨厌因为无知而犯错误,我也讨厌盲目遵循惯例而不理解其背后的含义。所以现在是我要求澄清的时候了。对此有何看法? 最佳答案 惯例是1.4!=1.40。版本是一组数字,而不是单个数字。如果他们想增加到1.4,他们应该一直使用1.3.8。 关于

windows - 为 Win32 和 WinCE 开发非托管 C++ DLL 的最佳方式是什么?

我对如何最好地设置VS2008项目以便将DLL编译为智能设备DLL和C++Win32DLL的意见很感兴趣。除了拥有两个项目并共享源文件之外,还有其他选择吗? 最佳答案 是的,您可以使用多个平台来做到这一点。虽然很难做到正确,但您无法从项目模板中初始化设置。最好的办法是使用SmartDevice项目模板启动项目,因为它具有最多的自定义设置。然后Build+ConfigurationManager,Activesolutionplatform=New,选择Type=Win32,Copy=None。最后一个是痛苦的一点,您必须自己更改Wi

c++ - 错误 LNK2005 : _sprintf already defined in ntdll. lib(ntdll.dll)

我链接到ntdll.lib以使用ZwQueryInformationProcess并使用多线程运行时库。ntdll似乎定义了一些crt函数。因此,当我链接它并使用运行时库时,我会遇到链接器错误。我可以强制链接器使用crt函数并忽略ntdll符号来消除错误吗?或者以其他方式解决此错误。我知道ZwQueryInformationProcess的文档建议动态加载,但它在我的主项目也链接到的静态库中使用,并且这已经运行了很长时间,所以我不想改变它。谢谢。我在其他网站上发现了一些关于此的讨论,例如:http://www.codeguru.com/forum/archive/index.php/t