WIN10 64位下VS2015 MFC直接添加 halcon 12的CPP文件實現視覺檢測


近段時間開始接觸halcon,但是在VS2015里面使用,無論是配置還是生產EXE文件,都不如意。

加上網上的教程很多,經過多次測試,其實有很多地方無需修改,如果修改的太多也失去了直接添加封裝的意義。

我的環境為 WIN10 64位 halcon12 用64位到處C++ 文件,VS2015免費共享版。

(如果要生成32位的話,需要halcon12 用32位程序  導出C++,並且需要把VC切換為X86平台,

庫目錄改為 C:\Program Files\MVTec\HALCON-12.0\lib\x86sse2-win32;

配置的第五部,項目屬性 -- 配置屬性 -- 鏈接器 -- 輸入 -- 附加依賴項 -- 添加 halconcpp.lib,

這里的halconcpp.lib,需要改為C:\Program Files\MVTec\HALCON-12.0\lib\x86sse2-win32\halconcpp.lib

其它地方和64位相同。)

下面開始:

一、VS2015方面

1、先生成一個MFC對話框程序,步驟略。(我得工程名稱為:TMD視覺檢測)

VS配置:

2、先在配置管理器,把平台改為X64,因為修改這里的時候,下面的所有設置都會恢復默認。所有最好先設置這里。


3、項目屬性 -- 配置屬性 -- VC++目錄 -- 包含目錄 -- 添加 $(HALCONROOT)\include;$(HALCONROOT)\include\halconcpp;


4、項目屬性 -- 配置屬性 -- VC++目錄 -- 庫目錄 -- 添加 $(HALCONROOT)\lib\$(HALCONARCH);

(圖同上)
5、項目屬性 -- 配置屬性 -- 鏈接器 -- 輸入 -- 附加依賴項 -- 添加 halconcpp.lib

配置完畢!

二、實際操作部分:

1、halcon導出C++文件,切記用64位導出,我導出的文件名為:VCDemo64.cpp

2、添加CPP到VS,在資源管理器中,源文件 -- 右鍵 -- 添加 -- 現有項 -- 找到上一部導出的halcon CPP文件

3、新建頭文件hh.h  ,資源管理器 -- 頭文件 -- 添加 -- 新建項 -- 選擇頭文件 -- 命名為hh.h (隨便)

hh.h 添加內容:

#pragma once
#ifndef MY_FILE_H_
#define MY_FILE_H_

void action();

#endif

4、修改對話框Dlg CPP文件,

添加頭文件及空間(如下圖):

#  include "HalconCpp.h"
# include "hh.h"
using namespace HalconCpp;

5、修改halcon CPP 文件 VCDemo64.cpp,

在最頂部添加頭文件:

#include "stdafx.h"

截止到此,重新生成解決方案,可編譯成功。

三、添加按鈕激活。

1、在VS 窗體對話框中 添加 按鈕

在按鈕事件代碼中,添加后如下:(此段代碼為halcon導出的CPP主函數段)

void CTMD視覺檢測Dlg::OnBnClickedButton1()
{
    // TODO: 在此添加控件通知處理程序代碼

    SetSystem("width", 512);
    SetSystem("height", 512);

#if defined(_WIN32)
    SetSystem("use_window_thread", "true");
#elif defined(__linux__)
    XInitThreads();
#endif

#ifndef __APPLE__
    action();
#else
    ret = apple_main(argc, argv);
#endif
    return;
}

上面你復制過來的時候,return 會報警,刪掉即可。

重新生成解決方案,編譯成功,運行,點擊按鈕,如下圖:(產品就不顯示了)

 

未完待續。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM