草庐IT

C++动态库

全部标签

windows - 查找 exe 是否动态链接 (windows)

如何在windows中判断一个exe文件是动态链接还是静态链接? 最佳答案 所有Windows应用程序都动态链接到WindowsAPI。如果您需要确定特定的非Windows库(如libxml或类似库)是如何链接的,VisualStudio包含一个名为DEPENDS.EXE的程序,它将显示一个exe链接到的所有DLL。如果有问题的库未列出,那么它要么静态链接,要么根本没有链接。 关于windows-查找exe是否动态链接(windows),我们在StackOverflow上找到一个类似的问

c++ - 如何知道磁盘是基本磁盘还是动态磁盘?

在Windows中,是否可以通过C/C++程序知道我们正在处理的是哪种磁盘?忘记gpt或mbr,如何知道它是基本的还是动态的?程序输入可以是盘符或任何与磁盘相关的信息,输出应该是动态的或基本的。不需要直接的方法,即使它是一个漫长的过程,也可以。我在msdn中找不到太多。请帮帮我。 最佳答案 Windows中有一种方法,但不是直截了当的。没有直接的API来确定磁盘是基本磁盘还是动态磁盘,但是所有动态磁盘都会有LDM信息。因此,如果一个驱动器上有一个包含LDM信息的分区,那么它将是一个动态磁盘。带有IOCTL_DISK_GET_DRIV

c++ - 如何在 Windows 中以编程方式查找动态加载的模块(静态模块)

我正在尝试将unix实用程序ldd移植到Windows,因为dependencywalker和cygcheck并没有完全提供我正在寻找的用法。(也是为了学习经验)我一直在MSDN上寻找一个列出可执行文件的dll依赖项的WindowsAPI,甚至是编译后的exe中的存储格式(只是为了过滤掉它),但我一直无法找到任何东西。如果有人知道Windows使用什么API调用来列出要加载的模块,或者我可以在可执行文件中搜索什么模式来找到要加载的模块,请帮助我:)谢谢!-注意:我不打算分析动态模块,只是列出运行时需要的模块 最佳答案 在exe导入表

.net - 在 winforms 应用程序中动态设置 Picturebox 的图像?

我得到如下所示的application.startuppath;C:\DocumentsandSettings\aju\mydocuments\visualstudio2010\Projects\gManager\gManager\bin\Debug我这里有一张图片要为图片框设置..\图片\Image1.jpg如何设置picturebox的image属性? 最佳答案 pictureBox1.Load(path_to_picture) 关于.net-在winforms应用程序中动态设置Pi

windows - 如何从Windows批处理文件中的动态变量中获取值

我使用的是MicrosoftWindowsXP[版本5.1.2600]尝试这样做。尝试动态创建变量,然后在循环中从该变量中读取值。@ECHOoffSETSQL1=TESTSETSQL2=TEST1SETSQL3=TEST2SETSQL=SQLSETLOCALENABLEDELAYEDEXPANSIONSET/Anumber=0FOR/l%%AIN(1,1,3)DO(SET/Anumber=number+1echo!number!echo%SQL%!number!)endlocalOutputshouldbe1test2test23test3IamgettingC:\temp>c.bat

c++ - 从客户端应用程序调试动态库

假设我在Debug模式下编译了一个动态库(WindowsDLL和/或Linux共享对象文件,.so),供动态链接到它的客户端应用程序使用。我的源代码可供客户端应用程序开发人员使用。我需要对以下调试场景进行一些说明。我一直理解/假设为了让客户端应用程序调试到我的库中(例如,为了让客户端应用程序开发人员在调试时进入我的源代码,比如在MSVC++中使用F10),他们必须实际构建一个我的库本身的本地拷贝(可以访问我的源代码),或者至少可以在本地访问我的源代码而无需构建它(不确定这是否足够?)。我说得对吗?换句话说,如果客户端应用程序动态链接到我的应用程序,我认为仅仅提供带有调试符号的库(MSV

windows - 如何检查生成的dll是静态链接还是动态链接?

以下是我的链接命令:RunningMkbootstrapforXML::SAX::ExpatXS()C:\Perl\bin\perl.exe-MExtUtils::Command-echmod--644ExpatXS.bslink-out:blib\arch\auto\XML\SAX\ExpatXS\ExpatXS.dll-dll-nologo-nodefaultlib-debug-opt:ref,icf-libpath:"C:\Perl\lib\CORE"-machine:x86ExpatXS.obj-def:ExpatXS.defCreatinglibraryblib\arch\a

c++ - 无法从 OnExit() 中删除在 WxApp 中创建的动态对象

我试图了解应该如何设计WxWidgets(3.0.1)应用程序,但我遗漏了一些东西,因为我正在尝试的东西不起作用。在基本层面上,我有我的WxApp,它创建了一个WxFrame,它得到显示并且一切正常。然后我决定添加一个记录器对象....我使该对象成为我的WxApp的成员:classIniLogWx:publicwxApp{public:virtualboolOnInit();virtualintOnExit();private:cLogStore*cl_LogStore;};并在WxApp::OnInit()中初始化它boolIniLogWx::OnInit(){MainFrame*f

windows - delphi 中的动态数组和 wininet?

我正在使用WinInet连接我们的一台服务器并从中检索信息。我正在使用以下内容:indexdata:arrayofbyte[1..5000]ofbyte;infoBuffer:array[0..5000]ofchar;BufferSize:DWORD;reserved:DWORD;text:string;BufferSize:=Length(infoBuffer);res:=HttpQueryInfo(hHttpRequest,HTTP_QUERY_RAW_HEADERS_CRLF,@infoBuffer,BufferSize,Reserved);Reserved:=0;Interne

c++ - 删除静态指针指向的动态内存

我有以下结构(简化):classmyType{staticchar*data;//moreprivatedataherepublic://publicinterfacehere};data是myType的所有实例之间共享的资源,它指向一个动态分配的内存(由其中一个实例在初始化时分配)。到目前为止一切顺利。当我需要释放data指向的内存时,问题就出现了。引用计数不是这里的解决方案,因为在某个执行点没有myType的单个实例是一种有效且可能的情况-稍后可以创建一个新实例-因此数据必须保留。我需要在卸载驱动程序时释放内存,但卸载与myType对象的实际销毁无关,因此我不得不手动释放data.