我试图将Visualization ToolKit(VTK)库创建的场景嵌入到VisualC++ 2012中创建的窗体窗体中,以便设计我的Windows本机GUI界面。如何在Windows窗体项目中创建VTK项目(VisualC++ 2012)
我想强调的是,所有使用控制台应用程序的例子都配置了(Cmake),使用VC++ 2012进行编译并按照官方VTK wiki页面的指示完美工作。
问题是,如果我尝试调用Win Form应用程序中的VTK函数和类初始化,即使我按预期方式正常添加所有内容,也会得到Error LNK1107: invalid or corrupt file: cannot read at 0x2E0 D:\.....\VTK_61_BUILD_VS2012\bin\Debug\vtkViewsCore-6.1.dll
,这些包括头文件和外部库依赖项。
这让我觉得我来自错误的Visual C++ 2012项目模板或明显的东西我完全失踪,否则编译器会出现很多没有找到文件或语法错误。
这是我尝试调用VTK库的第一行,即使是intellisense也提示vtk .....名为proc,函数和结构,但应用程序无法编译。
#pragma once
#include <vtkSmartPointer.h>
#include <vtkTriangle.h>
#include <vtkCellArray.h>
#include <vtkPolyData.h>
#include <vtkRenderWindow.h>
namespace CLR_Project1 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
...
...
vtkSmartPointer<vtkPoints> points = vtkSmartPointer<vtkPoints>::New();
这里有什么问题?
首先你必须创建一个CLR包装VTK或使用C++/CLR混合模式。 –