建立Windows DLL的建议

时间:2012-07-22 14:55:59

标签: c++ visual-c++ dll dllexport

我正在尝试使用我正在处理的一些可视化c ++项目创建一个Windows DLL。我的更大目标是创建一个可以由客户链接的DLL,而不必担心(太多)我的dll编译方式的细微差别。

  • 如果有一些我应该使用的基本编译器标志可以广泛接受,我想更好地理解。
  • 如果我需要导出Dll,是否有通用程序可以编写结构。特别是对包装路线不太敏感的东西。客户端可能有4byte打包,或其他东西用于他们自己的项目。如何确保我的标题是8byte对齐不会影响。
  • 创建win32 dll或MFC dll是否重要。

我确实构建了我的项目,以便根据这里提到的想法导出类: http://www.codeproject.com/Articles/28969/HowTo-Export-C-classes-from-a-DLL

2 个答案:

答案 0 :(得分:1)

有些点巫婆穿过我的脑海。

  1. 不要在公共方法签名或结构中使用stl对象。
  2. 如果可能,请在签名中仅使用简单数据类型。
  3. 如果必须导出某些结构,请在标题中定义包装。

答案 1 :(得分:0)

看看Best Practices for Creating DLLs,这是基本的东西,但经常忽略可能导致非常难看的副作用的问题。