分类: 电脑/网络 >> *** 作系统/系统故障
解析:
DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。Windows提供的DLL文件中包含了允许基于Windows的程序在Windows环境下 *** 作的许多函数和资源。
DLL多数情况下是带有DLL扩展名的文件,但也可能是EXE或其他扩展名。它们向运行于Windows *** 作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
DLL可在“C:Windows”目录“C:WindowsSystem”目录和程序的安装目录中找到。如果启动程序,但一个或多个DLL文件丢失或毁坏,则会收到出错消息,如“找不到xyzdll”。如果启动的程序带有一个过期的DLL文件或不匹配的DLL文件,则会出现“未定义的动态链接调用”消息。这时,你可在其他电脑上找到正确的DLL文件并将它拷贝到适当的目录下,程序就能正确运行。(作者:杰子 电脑报)
分类: 电脑/网络 >> 软件 >> 其他软件
问题描述:
我买的3ds max7附带的CD光盘中的已经画好的图,打不开来,提示我没有dll文件,我该怎么办
解析:
一般来说,DLL是一种磁盘文件,以DLL、DRV、FON、SYS和许多以EXE为扩展名的系统文件都可以是DLL它由全局数据、服务函数和资源组成,在运行时被系统加载到进程的虚拟空间中,成为调用进程的一部分。如果与其它DLL之间没有冲突,该文件通常映射到进程虚拟空间的同一地址上。DLL模块中包含各种导出函数,用于向外界提供服务。DLL可以有自己的数据段,但没有自己的堆栈,使用与调用它的应用程序相同的堆栈模式;一个DLL在内存中只有一个实例;DLL实现了代码封装性;DLL的编制与具体的编程语言及编译器无关。
所以这样看来是你的 *** 作问题或者说你买的光盘质量问题换到别人的机子上上看看可不可以如果没有问题的话就是说你的 *** 作有问题!
DLL(动态连接库),既然是动态,那么就是有静态连接库,我想如果这么说大家
会更明白:
也许有的人在DOS下编写过程序都明白这么一件事情,我写了一个程序,里面有一
个功能就是把屏幕的内容翻转在转90°打印出来,那么我需要把整个程序写好放
到我的所有代码中,但是如果我写另外一个程序的时候也有相通的功能,我可以
调用以前的程序这个功能吗?当然是不可以的了,所以我就要重新的写一次,如
果有5个需要调用这个功能的程序,我的这个功能函数需要20K的地方,那么我的
硬盘就有80K的垃圾出现(20k5 - 20k),这仅仅是一个函数,大家是否可以数
清除WINDOWS如果这样来写,需要多少函数吗?你看看所有的按钮、滚动条、
Listbox\Textbox\checkBox\窗体、打印对话框、颜色对话框、打开、保存、另存
、字体对话框、文件的排列、拷贝、粘贴 这一切的一切是不是都需要在所
有的程序中都要写出来呢?如果真的是这个样子,那么我们的windows应该按TB来
计算了(1TB=1024GB),也许你说你的硬盘很大,那么他们还要在运行的时候占
用相同大下的内容呢!所以发展出来了,动态连接库(dll)这个感念:
动态连接,就是把这些相通的功能、函数都放到一种特殊形式的windwos可执行文
件中(dll),生成一个DLL的时候,程序员需要写出,其中包含那些函数需由其
他程序来访问。这个过程叫做对函数的“导出”
创建windows程序的时候,专门的连接程序对程序的对象文件进行扫描,并生成一
个列表,列出那些调用的函数在那个DLL那个位置,指定各个函数所在位置的过程
叫做对函数的“导入”,当程序运行的时候,一旦要求用到执行文件内部没有的
函数,windows就会自动装载动态连接库,使应用程序可以访问这些函数。此时,
每个函数的地址都会解析出来,并且以动态的方式连接到程序里--这便是术语
“动态连接”的由来。
另外还有一个好处,就是当你更新你的这个函数的版本和功能的时候,静态连接
所需要做的工作是多少(假设按windwos来说他有上千个这样的函数,一共有100
多个程序来使用,那静态连接需要100000次的更新,动态连接只需要1000次)
,从而也节省了内存的空间。
动态连接库不一定是DLL扩展名的,也可以是ocx、vbx、exe、drv 等等的
大家可以发现在调用WIN32 api的时候里面都会有说明是来自于那个dll等宿主文
件的
现在我就在这里讲讲一些标准的dll用途:
看下面这个API声明:
Public Declare Function GetWindowsDirectory Lib "kernel32" Alias
"GetWindowsDirectoryA" (ByVal lpBuffer As String, ByVal nSize As Long)
As Long
看见kernel32了吗,其实这个就是kernel32dll的名字,你可以在你的硬盘里找
到他,这就是说GetWindowsDirectory这个函数是在kernel32dll里面,他的别名
是GetWindowsDirectoryA,()中是他的参数,有两个一个是字符型,一个是长
整型,返回值也是长整型。lpBuffer ------- String,指定一个字串缓冲区,
用于装载Windows目录名。除非是根目录,否则目录中不会有一个中止用的“\”
字符nSize ---------- Long,lpBuffer字串的最大长度,返回值 为Long,复制
到lpBuffer的一个字串的长度。如lpBuffer不够大,不能容下整个字串,就会返
回lpBuffer要求的长度。零表示失败。
这就是API声明的意义所在!
DLL的说明
KERNEL32DLL ---- 低级内核函数。使用他可以完成内存管理、任务管理、
资源控制等。
USER32DLL------于windows管理有关的函数。消息、菜单、光标、计时器
、通信和其他大多数非现实函数都可以从这里找到
GDI32DLL-------图形设备接口库。于设备输出有关的函数:大多数绘图
、显示场景、图元文件、坐标及其字体函数都可以从这梨找到。
COMDLG32DLL\LZ32DLL\VERSIONDLL\---这都是提供一些附加函数的库,包
括通用对话框、文件压缩、版本控制的支持。
COMCTL32DLL --------一个新的windows控件集合,比如TreeView和RichTextBox
等等,最初这个好像是为了win95而制作的,但是现在也使用与NT下
MAPI32DLL---------提供了一套电子邮件的专用函数
NETAPI32DLL--------提供了一套访问和控制网络的函数
ODBC32DLL--------(不用我再说了吧)ODBC功能的DLL之一
WINMMDLL------(这可不是WINDOWS的MM)是多媒体控制访问函数集合
windows api正在快速发展和变化,是你我任何单个人都追赶不上的速度发展,幸
运的是我们不用掌握所有的windows API,只是掌握需要经常使用的WINDOWs api
和他的常规结构、基本感念就可以了,这亮点很重要。
你是要启动什么?
你试试去百度搜一下
或者如果有腾讯电脑管家 就在右上角搜索一下
DLL英文全称Dynamic Link Library,中文意思是:动态链接库。
DLL是一个作为共享函数库的可执行文件,
它使进程可以调用不属于本身可执行代码中的函数。
函数的可执行代码位于一个独立的动态链接库文件中,
这样可以节省内存和磁盘的存储空间,
同时使程序更易于升级
如果出现了DLL丢失或者损坏的问题
你可以试试腾讯电脑管家,在电脑诊所
找到软件问题,就可以看见一个dll文件丢失,
针对各种常见dll文件丢失或者打不开的问题
找到你需要的 进行修复,就可以了。
平时多开启杀毒软件保护电脑,有时候或许是病毒导致的文件丢失。
分类: 电脑/网络 >> *** 作系统/系统故障
解析:
DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。Windows提供的DLL文件中包含了允许基于Windows的程序在Windows环境下 *** 作的许多函数和资源。
DLL多数情况下是带有DLL扩展名的文件,但也可能是EXE或其他扩展名。它们向运行于Windows *** 作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的 DLL文件被称为共享DLL文件。DLL文件一般被存放在C:\Windows\System目录下。
以上就是关于.dll是什么全部的内容,包括:.dll是什么、dll是什么文件、什么是dll文件dll文件是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)