调整Windows控制台和MFC静态库的大小

时间:2016-02-27 21:00:21

标签: c++

我正在尝试创建这个控制台程序,它必须调整控制台本身的大小以将我想要的文本放入其中,所以我使用此方法来调整它:

#include <windows.h>
using namespace std;
int main ()
{
HWND console = GetConsoleWindow();
RECT r;
GetWindowRect(console, &r); //stores the console's current dimensions

MoveWindow(console, r.left, r.top, 775, 575, TRUE); // 775 width, 575 height

}

它与我的其余代码完美配合。唯一的问题是,当我将程序发送给朋友时,他的电脑中显示“MSVCP140.dll”丢失。 所以要解决这个问题,我一直在做的是将Visual Studio的项目设置从“使用标准Windows库”更改为“使用静态MFC库”,这样就不会要求“MSVCP140.dll”。这里唯一的问题是,当我将其设置为使用静态MFC库时,它会抛出此错误:

Unresolved external symbol _imp_GetWindowRect
Unresolved external symbol _imp_MoveWindow

如果我从上面删除Console resize命令,它将没有问题。所以问题基本上是如果我使用Console Resize我必须使用标准库,如果我不使用,我可以使用MFC库。但我需要使用控制台调整大小与MFC,所以它不要求.dll在其他人的计算机上打开。

我在这里疯了。任何想法/想法?

1 个答案:

答案 0 :(得分:2)

我相信你改变了错误的设置。如果您没有使用MFC,请在“使用标准Windows库”中保留“使用MFC”选项。

相反,请查看“C / C ++ /代码生成”并将“运行时库”选项从“多线程DLL”更改为“多线程”

同样,在调试模式下,您将从“多线程调试DLL”切换到“多线程调试”

你可以让你的朋友下载&amp;安装Visual C++ Redistributable for Visual Studio 2015