c++ - 为什么建源后没有.dll文件?

标签 c++ visual-c++

我将在源代码下方构建一个 dll 表单:

HelloDLL.h

#pragma once

#ifdef DLLDIR_EX
#define DLLDIR_EX __declspec(dllexport)
#else
    #define DLLDIR_EX __declspec(dllimport)
#endif 

class DLLDIR_EX HelloDLL
{
public:
    HelloDLL();
    ~HelloDLL();

    void hello();
    static void helloStatic();
};

实现是这样的:

HelloDLL.cpp

#include "stdafx.h"
#include "HelloDLL.h"
#include <iostream>

using namespace std;


HelloDLL::HelloDLL()
{
}

void HelloDLL::hello()
{
    cout << "Hello world of DLL" << endl;
}

void HelloDLL::helloStatic()
{
    cout << "Hello static world of DLL" << endl;
}

HelloDLL::~HelloDLL()
{
}

构建项目(Ctrl + Shift + B)后,在项目的调试文件夹中有几个通常生成的文件,类型如下:

  • 申请
  • 导出库文件
  • 增量库文件
  • 目标文件库
  • 程序调试数据库

但是没有.dll文件... 谁能告诉我这个案例有什么问题吗?

最佳答案

打开您的项目属性,转到配置属性常规并查找条目配置类型。确保将其设置为正确的输出类型。默认情况下,它将设置为 Application (.exe)。您正在寻找的是动态库 (.dll)

Screenshot from MSVC 2013

关于c++ - 为什么建源后没有.dll文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25419831/

相关文章:

c++ - 以编程方式获取主机的 DNS 服务器

string - 如何在 C++ 中调用字符串资源

c++ - 如何检查C中是否存在文件:\drive using VC++?

c++ - iwlist 在使用 execl 调用时尝试扫描所有接口(interface)

c++ - 如何正确跟踪 VBO 和 VAO 以进行清理?

c++ - 为什么竞赛条件的输出不是随机的?

c++ - 显式模板函数和方法特化

c++ - 如何从注册表中读取本地化名称?

c++ - std::regex_match 在传递右值参数时给出错误的匹配结果

c++ - 将枚举类的值用于移位运算符