Windows CE 6.0和运行时链接到调试DLL / MDd

时间:2013-04-11 22:19:57

标签: c++ windows-ce

我在x86 PC上使用Windows CE 6.0 R3。我为平台构建了NK.bin和SDK。但我有一些问题需要了解如何使用/ MTd(调试DLL)构建控制台应用程序。

如果我试图建立这个:

// main.c with /MDd
#include <stdio.h>
int main(int argc, char* argv[])
{
    printf("Hello World\n");
    return 0;
}

这项工作很完美,但是

// main.cpp /MDd
#include <iostream>
int main(int argc, char* argv[])
{
    std::cout << "Hello World\n";
    return 0;
}

构建但应用程序“崩溃”。似乎调试版本中的C ++ STD共享库不存在于目标平台上,但存在CRT的调试版本。

我有什么办法为windows ce 6.0构建C ++应用程序,链接到c ++库的调试版本?

我有什么办法为windows ce 6.0构建C ++应用程序,链接到c ++库的调试版本?我是否要更改我的Platform Builder?

1 个答案:

答案 0 :(得分:2)

解决问题。问题是VS 2008没有贬低CRT的调试版本,因此我必须在目标平台上手动部署msvcr90d.dll。 msvcr90d.dll位于$(VCInstallDir)/ ce / bin / $(ARCHFAM)中。