我試圖將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混合模式。 –