1

我正在尝试在 vs2010 中创建一个 c++ dll。我创建了一个 win32 项目并选择“动态库”作为配置类型。我添加了 MyDll.cpp 和 MyDll.def。

这是 mydll.h

#include "stdafx.h"

extern "C" BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}

extern "C" UINT __stdcall stopGui(MSIHANDLE hModule) 
{
    MessageBox(NULL, TEXT("Stop Gui"), TEXT("Custom Action Monitor Machine"), MB_OK);
    return ERROR_SUCCESS;
}

extern "C" UINT __stdcall stopService(MSIHANDLE hModule) 
{
    MessageBox(NULL, TEXT("Stop Service"), TEXT("Custom Action Monitor Machine"), MB_OK);
    return ERROR_SUCCESS;
}

这是 MyDll.def

LIBRARY "MyDll"
DESCRIPTION "My library test"
EXPORTS
    ; Explicit exports can go here
    stopGui
    stopService

当我构建项目时,我得到“构建成功”,但我的“发布”目录中没有 dll 文件。我只是得到很多没有错误的日志文件和几个 obj 文件。我该如何解决这个问题?先感谢您。

4

1 回答 1

2

解决了。输出在解决方案的“Debug”目录中,而我在项目的“Release”目录中查找它。

于 2012-05-25T15:24:12.787 回答