vs编译dll
A. vs2010怎么编译生成dll文件
可以在开始建立新项目的时候选择DLL类型进行编写
一般情况下有四种可选的类型:windows应用程序,控制台应用程序,DLL,静态库。
当完成DLL的编写之后,点击菜单栏【生成】->【生成解决方案】然后进入该解决方案源文件夹下找到bin->Debug会发现DLL文件已经生成。
B. 用VS 如何由源代码生成DLL文件
1:创建DLL工程
文件->新建->项目->visual c++->win32->win32控制台应用程序(win32项目也可以)
填写项目名称MyDLL->确定->下一步->DLL(附加选项 对空项目打钩)->完成。
到这里DLL工程就创建完毕了,下面新建两个文件MyDLL.cpp和MyDLL.h。
MyDLL.cpp内容如下:
testMyDLL.h内容如下
#pragmaonce
extern"C"_declspec(dllexport)intAdd(int&a,int&b);
现在可以编译通过了,但是程序运行就报错,还需要将MyDLL.dll复制到当前项目生成的可执行文件所在的目录。(这一点非常重要)
这里需要注意testMyDLL.cpp文件中调用lib的这句话:
#pragmacomment(lib,"..\debug\MyDLL.lib")
这里需要指明lib所在的文件夹,当然我们也可以在生成dll的MyDLL工程中,指定lib和dll文件的输出路径,直接到testMyDLL工程下。
注意:如果只有dll文件,那么必须在程序里面调用LoadLibrary()函数才能使用,如果有lib文件,那么有两种方式可以马上进行调用
C. vs2010编译c的dll,在c++中调用问题
楼上说的很对,我在用java NDK 开发也是这样的问题,但是一样是用extern "C" 搞定,
贴段代码给你看看
#include<jni.h>
#include<stdio.h>
#include<pthread.h>
#include<unistd.h>
#include<android/log.h>
extern"C"
{
voidJava_com_example_jniopengl_MainActivity_go(JNIEnv*env,jobjectthiz);
}
void*run_by_thread(void*num)
{
int*nums=(int*)num;
intstatus=0;
for(inti=0;i<3;i++)
{
::sleep(1);
::__android_log_print(1,"go++","thread%d:_%d",*nums,i);
}
if(*nums==1)
{status=100;
return(void*)&status;
}
elseif(*nums==2)
{
status=200;
::pthread_exit((void*)&status);
}}
voidstart_threads()
{
pthread_tth1,th2;
intthreadNum1=1;
intthreadNum2=2;
intret=-1;
intre=::pthread_create(&th1,NULL,run_by_thread,(void*)&threadNum1);
re=::pthread_create(&th2,NULL,run_by_thread,(void*)&threadNum2);
void*status;
re=::pthread_join(th1,&status);
int*code=(int*)status;
__android_log_print(1,"code","code:%d ",*code);
re=::pthread_join(th2,&status);
int*code2=(int*)status;
__android_log_print(1,"code","code:%d ",*code2);
}
voidJava_com_example_jniopengl_MainActivity_go(JNIEnv*env,jobjectthiz)
{
start_threads();
}
D. 我在VS2017里面用C#在.net framework上编写了一个dll,我想编译,怎么解决
您的编译已经完成了。在debug或者release文件夹下可以看到.dll文件(也可能会有xml文件),但是这是一个类库,本身是不能直接运行的,所以在VS中使用“运行”(F5)会弹出这样的提示。如果您想要调试这个类库,请在解决方案下添加一个新的项目,引用这个类库项目,然后进行测试。
E. 如何用VS2010编写动态链接库DLL
腾讯电脑管家可以帮助修复
a进入管家的首页后,点击右上角的“工具箱”按钮,点击“电脑诊所”
b进入“电脑诊所”找到“软件硬件”点击“丢失dll文件”最后“一键修复”界面
可以根据自己弹出的对话框中显示的无法启动程序是丢失的何种dll文件,找到对应的后,鼠标轻轻放在该项上,当出现了“立即修复”按钮后点击“立即修复”按钮。
完成以上步骤后,系统便自行修复了dll文件丢失的故障了,完成了修复
F. vs2012怎么生成dll文件
这里简单说一下:
1)MD4
MD4(RFC1320)是MIT的RonaldL.Rivest在1990年设计的,MD是MessageDigest的缩写。它适用在32位字长的处理器上用高速软件实现--它是基于32位操作数的位操作来实现的。
2)MD5
MD5(RFC1321)是Rivest于1991年对MD4的改进版本。它对输入仍以512位分组,其输出是4个32位字的级联,与MD4相同。MD5比MD4来得复杂,并且速度较之要慢一点,但更安全,在抗分析和抗差分方面表现更好。
MD5是一种不可逆的加密算法,目前是最牢靠的加密算法之一,尚没有能够逆运算的程序被开发出来,它对应任何字符串都可以加密成一段唯一的固定长度的代码。
G. vs中编译生成的.dll文件有什么用处
要安装编译器。 否则没有办法。 VS2010 是一个平台里面附带了很多编译器,例如VC10的编译器。 如果你要生成dll,就需要编译器。 可以单独下载。 也可以用 GCC 的编译器。
H. 如何在vs中安装dll反编译工具
网络搜索下载Reflector绿色版,解压,可找到文件Reflector,
双击Reflector,即可运行Reflector,可看到如下界面;左上角工作栏,File->Open Assembly;打开你所需要打开的dll文件
在软件左边工作区域我们就可以看到你所打开的dll文件,点击展开,在所选择的.dll文件下面可以看到dll中所有的编写的类,
4
点击类名我们就可以看到里面编写的内容了
I. 如何用VS编辑dll文件(组件)
反编译之后进行代码重组,工具推荐使用Reflecter,然后编译
J. vs2013 c++ 怎么生成dll
1.建立一个C++的Win32DLL,这里要注意选择"Export symbols"导出符号。点击完成。如下图所示: