1. loadlibrary失败,ug怎么调出dll模块?
UG(Unigraphics)软件可以通过调用DLL(Dynamic Link Library)模块来扩展其功能。以下是一些调用DLL模块的方法:
1. 在UG的菜单栏中选择“高级” -> “NX Open” -> “工具箱”,然后单击“打开”按钮。在“工具箱”窗口中,可以看到“DLL”选项卡。单击该选项卡,然后单击“添加”按钮,浏览并选择要调用的DLL文件。
2. 在UG的菜单栏中选择“高级” -> “NX Open” -> “工具箱”,然后单击“打开”按钮。在“工具箱”窗口中,可以看到“NX Open C/C++ API”选项卡。单击该选项卡,然后单击“新建”按钮。在“新建”对话框中,选择“DLL”项目类型,然后设置项目名称、路径等参数。在项目中添加需要调用的DLL文件,并编写相应的代码。
3. 在UG的菜单栏中选择“文件” -> “工具” -> “用户自定义工具”。在“用户自定义工具”对话框中,单击“新建”按钮,然后设置工具名称、命令行参数等信息。在命令行参数中指定要调用的DLL文件路径和名称。
请注意,调用DLL模块需要一定的编程知识和经验,如果您不确定如何使用DLL模块,请咨询专业人士的帮助
2. 电脑开机显示failedtoloadkernllibrary什么意思啊?
系统运行有些EXE程序 有时会出现“failed to load kernel library”这种情况,原因是你的杀毒软件误杀了"krnln.fnr"和"shell.fne"这两个文件。
出现此问题的原因可能是因为用户对系统中"C:\Documents and Settings\Administrator\Local Settings\Temp\E_4"目录没有可写权限造成的,因为此目录是E语言程序运行时临时存放支持库文件"krnln.fnr"和"shell.fne"的。
解决办法 请把附件下载下来,解压后再放到下面所对应的目录即可! 把此文件解压后放在下面这个目录里 C:\Documents and Settings\Administrator\Local Settings\Temp\E_
4 如果 Temp文件夹下有“E_4”这个文件,请选择“工具”→“文件夹选项”→“查看”→然后把里面的[隐藏受保护的操作系统(推荐)]前面的那一项去掉。显示“E_4”此文件后,删除“E_4”,再新建一个文件夹 命名为“E_4”,再把下载好的3个文件放入“E_4”目录下,即可解决有些EXE执行文件时出现“failed to load kernel library”的错误提示。系统运行有些EXE程序 有时会出现“failed to load kernel library”这种情况,原因是你的杀毒软件误杀了"krnln.fnr"和"shell.fne"这两个文件。
出现此问题的原因可能是因为用户对系统中"C:\Documents and Settings\Administrator\Local Settings\Temp\E_4"目录没有可写权限造成的,因为此目录是E语言程序运行时临时存放支持库文件"krnln.fnr"和"shell.fne"的。解决办法1:删除临时文件夹“E_4”内的文件,如果看不到此文件,请选择“工具”→“文件夹选项”→“查看”→然后把里面的[隐藏受保护的操作系统(推荐)]前面的那一项去掉。试下行不行 如果不行 请参照解决办法2。本是是靠第2个办法解决的。在此感谢 风火六月。
解决办法2:请把下面的文件全下载下来,解压后再放到下面所对应的目录即可!把此文件解压后放在下面这个目录里C:\Documents and Settings\Administrator\Local Settings\Temp\E_
4 如果 Temp文件夹下有“E_4”这个文件,请选择“工具”→“文件夹选项”→“查看”→然后把里面的[隐藏受保护的操作系统(推荐)]前面的那一项去掉。
显示“E_4”此文件后,删除“E_4”,再新建一个文件夹 命名为“E_4”,再把下载好的3个文件放入“E_4”目录下,即可解决有些EXE执行文件时出现“failed to load kernel library”的错误提示。
3. netconfigxdll?
Dll 路径不对 或者 Dll不是完整的动态链接库
4. 3dmax下载的模型材质丢失如何找回?
在3Dmax中,如果下载的模型缺失材质,可能是由于以下几个方面的原因:
1. 加载模型时未加载对应的材质库。某些模型需要其自身的材质库才能正确渲染,如果在导入过程中未选择或加载对应的材质库,就会导致材质缺失。你可以尝试重新导入模型时,注意是否加载了正确的材质库。
2. 材质库路径不正确。如果导入模型时指定的路径与实际路径不一致,加载的材质库可能无法被找到。你可以尝试手动修改材质库路径,在到3Dmax中重新加载材质库。
3. 版本不兼容。如果下载的模型是使用比你当前的3Dmax版本更新的软件创建的,可能会有兼容性问题,导致材质无法正常显示。
针对以上的问题,可以按以下步骤进行检查:
1. 打开3Dmax,依次选择 Material Editor>Edit>Load Material Library。
2. 然后到模型的下载文件夹,找到相应模型下的“MaterialLib”的文件夹,确认是否有对应的材质库文件。
3. 如果找到对应的材质库文件,选择它,然后单击“打开”按钮,将该材质库导入到3Dmax的材质管理编辑器中。
4. 检查材质库路径,确认路径是否正确。
5. 如果以上方法无法解决问题,可以尝试从其他渠道下载并导入相同类型的模型,或者联系模型制作者进行进一步确认和调整。
希望能够帮到你。
5. failed怎么解决?
"load library failed"错误常出现在使用某个程序或应用时,表示加载特定库文件失败。要解决这个问题,可以尝试以下方法:
1. 重新启动计算机:有时候,重新启动计算机可以解决临时的系统问题。
2. 检查库文件路径:确保所需的库文件存在于正确的路径下。如果库文件被移动、删除或损坏,可能会导致加载失败。可以尝试重新安装相关程序或应用,以确保库文件的正确性和完整性。
3. 更新或安装相关的依赖库:如果问题是由于缺少所需的依赖库文件引起的,可以尝试更新或安装缺失的依赖库。在程序或应用的官方网站或用户论坛上查找相关的依赖库,并按照官方的指示进行更新或安装。
4. 检查系统环境变量:有时候,系统环境变量的配置错误也会导致加载库文件失败。您可以检查系统环境变量是否正确设置,特别是包含库文件路径的变量(如PATH变量)是否正确。
5. 更新程序或应用:如果问题出现在特定的程序或应用上,可以尝试更新到最新版本。新版本可能会修复一些已知的加载库错误问题。
6. 联系技术支持:如果上述方法都无法解决问题,可以联系程序或应用的技术支持团队,向他们报告问题并寻求进一步的帮助和支持。
需要注意的是,"load library failed"错误可能有多种原因,具体的解决方法可能因不同的情况而有所不同。请根据您遇到的具体情况进行尝试并选择合适的解决方法。
6. 如何创建与调用动态链接库?
动态链接库:dll不必被包含在最终的EXE中,EXE文件执行时可以动态地引用和卸载DLL文件。 同时,静态链接库中不能再包含其他的动态链接库或静态库,而动态链接库中可以包含其他的动态或静态库。 VC++支持的DLL: DLL的编制与具体的编程语言及编译器无关,动态链接库随处可见,VC++支持三种DLL:非MFC动态库、MFC规则DLL和MFC扩展DLL。DLL导出函数(或变量、类)可供应用程序调用;DLL内部函数只能在DLL程序内使用,应用程序无法调用它们。 导出函数的声明方式: 一种在函数声明类型和函数名之间加上“_declspec(dllexport)”。 另外一种采用模块定义(.def)文件声明,需要在库工程中添加模块文件,格式如下: LIBRARY 库工程名称 EXPORTS 导出函数名 DLL的调用方式: 一种静态调用,由编译系统完成对DLL的加载和应用程序结束时DLL的卸载。 另外一种动态调用,由编程者用API函数加载和卸载DLL(DLL加载—DLL函数地址获取—DLL释放)方式。 所有库工程编译时必须Release方式: Build—set active configuration—选择库工程的release方式 示例: 一、 函数----创建动态链接库(MFC规则DLL) 1. New--projects--MFC AppWizard(dll)--Regular DLL using shared MFC DLL //取名为MFC_dll 2. def文件中添加:函数名(Add_new) 3. h文件中添加:外部函数声明//求和函数,函数名为Add_new extern "C" __declspec(dllexport) int __stdcall Add_new(int a,int b); 4. cpp文件中添加: 外部函数实现 extern "C" __declspec(dllexport) int __stdcall Add_new(int a,int b) { return a+b; } 5. build--set active configuration--win32 release--ok 6. 生成 7. 根目录下release文件夹中dll,lib与根目录下h文件即为所需 二、 函数----调用动态链接库(把MFC_dll.dll和MFC_dll.lib拷到工程所在目录) //静态调用(.h可以写到.cpp文件中) 1. new--projects--win32 console application--an empty project 2. 添加h文件:(test.h) #pragma comment(lib,"MFC_dll.lib") //告诉编译器DLL相对应的lib文件所在路径和文件名 extern "C" _declspec(dllimport) int _stdcall Add_new(int a,int b);//声明导入函数 3. 添加cpp文件:(main.cpp) #include "test.h" int main() { cout<<Add_new(10,3); return 0; } //动态调用 #include <stdio.h> #include <windows.h> typedef int (* lpAddFun)(int ,int);//定义一个与Add_new函数接受参数类型和返回值均相同的函数指针类型 int main() { HINSTANCE hDll;//句柄 lpAddFun addFun;//函数指针 hDll=LoadLibrary("dllTest.dll");//动态加载DLL模块句柄 if(hDll) { addFun=(lpAddFun) GetProcAddress(hDll,"Add_new");//得到所加载DLL模块中函数的地址 if(addFun) { int result=addFun(2,3); printf("%d",result); } FreeLibrary(hDll);//释放已经加载的DLL模块 } return 0; } 三、 变量----创建动态链接库(非MFC DLL) 1. new---projects---win32 dynamic-link library----an empty project(Sample) 2. 添加sample.h #ifndef SAMPLE_H #define SAMPLE_H extern int dllGlobalVar; #endif 3. 添加 sample.cpp #include "sample.h" #include <windows.h> int dllGlobalVar; bool APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved) //windows在加载DLL时,需要一个入口函数,就如同控制台或DOS程序需要main函数、win32程序需要winmain函数一样。所以引入一个不做任何操作的缺省DllMain的函数版本。是DLL的内部函数。
7. 如何编译一个dll文件?
你在64位机器上安装64位的Matlab,那么dll编译的时候必须以x64为平台才可以正常loadlibrary否则就是你现在这副德行。