❶ 我在VS2017里面用C#在.net framework上编写了一个dll,我想编译,怎么解决
您的编译已经完成了。在debug或者release文件夹下可以看到.dll文件(也可能会有xml文件),但是这是一个类库,本身是不能直接运行的,所以在VS中使用“运行”(F5)会弹出这样的提示。如果您想要调试这个类库,请在解决方案下添加一个新的项目,引用这个类库项目,然后进行测试。
❷ 如何在vs中安装dll反编译工具
网络搜索下载Reflector绿色版,解压,可找到文件Reflector,
双击Reflector,即可运行Reflector,可看到如下界面;左上角工作栏,File->Open Assembly;打开你所需要打开的dll文件
在软件左边工作区域我们就可以看到你所打开的dll文件,点击展开,在所选择的.dll文件下面可以看到dll中所有的编写的类,
4
点击类名我们就可以看到里面编写的内容了
❸ 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是一种不可逆的加密算法,目前是最牢靠的加密算法之一,尚没有能够逆运算的程序被开发出来,它对应任何字符串都可以加密成一段唯一的固定长度的代码。
❹ 如何用VS编辑dll文件(组件)
反编译之后进行代码重组,工具推荐使用Reflecter,然后编译
❺ vs2013 c++ 怎么生成dll
1.建立一个C++的Win32DLL,这里要注意选择"Export symbols"导出符号。点击完成。如下图所示:
❻ 如何用VS2010编写动态链接库DLL
1、创建引用动态链接库的应用程序:在解决方案上单击鼠标右键》添加》新建项目
2、在添加新项目中选择其它语言->Visual C++->Win32,选择Win32 控制台应用程序,设置名称:simpleDLLTest
3、单击确定,在出现的Win32 应用程序向导的概述对话框中点击下一步
4、在应用程序设置中,选择应用程序类型下的控制台应用程序,单击完成创建项目
5、在控制台应用程序中使用类库的功能:1、为SimpleDLLTest.cpp添加内容。如下所示:
6、引用simpleDLL项目。右键单击SimpleDLLTest项目,选择项目依赖项;依赖于窗口中勾选SimpleDLL,单击确定
7、设置SimpleDLLTest项目为活动项目。右键单击SimpleDLLTest项目,选择设为启动项目
生成解决方案。
❼ 用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文件,那么有两种方式可以马上进行调用
❽ vs中编译生成的.dll文件有什么用处
要安装编译器。 否则没有办法。 VS2010 是一个平台里面附带了很多编译器,例如VC10的编译器。 如果你要生成dll,就需要编译器。 可以单独下载。 也可以用 GCC 的编译器。
❾ vs2010怎么编译生成dll文件
可以在开始建立新项目的时候选择DLL类型进行编写
一般情况下有四种可选的类型:windows应用程序,控制台应用程序,DLL,静态库。
当完成DLL的编写之后,点击菜单栏【生成】->【生成解决方案】然后进入该解决方案源文件夹下找到bin->Debug会发现DLL文件已经生成。
❿ 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();
}