日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

雷塞SMC304系列控制器VC6.0例程在VS2015下编译遇到的若干问题及解决办法

發布時間:2024/3/26 c/c++ 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 雷塞SMC304系列控制器VC6.0例程在VS2015下编译遇到的若干问题及解决办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

雷塞SMC304系列控制器VC6.0例程在VS2015下編譯遇到的若干問題及解決辦法

標簽(空格分隔): 雷塞 SM304 WIN10 VS2015


最近由于導師要求,負責噴涂機器人的控制部分,接觸到雷塞公司的控制器產品SM304,首先想著從給的例程入手,但由于例程是VC6.0的程序,而我的電腦是WIN10系統,用VC6.0起來十分的不方便,因此想到在VS2015下重新編譯一遍源代碼,下面是編譯過程中遇到的一系列問題。

0.在VS2015中創建一個空項目,將例程中所有文件按類別導入

配置:
(1)鏈接器–>系統–>子系統
選擇:“窗口 (/SUBSYSTEM:WINDOWS)”
參考:MFC 必須定義入口點 解決辦法

如果未配置出現錯誤:

d:\vs2015\vc\atlmfc\include\afx.h(38): warning C4996: ‘MBCS_Support_Deprecated_In_MFC’: MBCS support in MFC is deprecated and may be removed in a future version of MFC.
1> d:\vs2015\vc\atlmfc\include\afx.h(33): note: 參見“MBCS_Support_Deprecated_In_MFC”的聲明
1> _WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)
1> DMCd1DLG.cpp
1> DMCd1.cpp
1>LINK : fatal error LNK1561: 必須定義入口點

(2)配置屬性–>常規–>MFC的使用
選擇:“在共享DLL中使用MFC”
參考:在共享DLL中使用MFC

如果未配置出現錯誤:

1>d:\vs2015\vc\atlmfc\include\afx.h(24): fatal error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
1> DMCd1DLG.cpp
1>d:\vs2015\vc\atlmfc\include\afx.h(24): fatal error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
1> DMCd1.cpp
1>d:\vs2015\vc\atlmfc\include\afx.h(24): fatal error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

(3)配置屬性–>常規–>字符集
選擇:“使用多字節字符集”
參考:CWnd::MessageBoxW”: 不能將參數 1 從“const char [16]”轉換為“LPCTSTR

如果未配置出現錯誤:

1>g:\噴涂機器人\spraying robot\spraying robot\dmcd1dlg.cpp(90): error C2664: “int CWnd::MessageBoxW(LPCTSTR,LPCTSTR,UINT)”: 無法將參數 1 從“const char [11]”轉換為“LPCTSTR”

1> g:\噴涂機器人\spraying robot\spraying robot\dmcd1dlg.cpp(181): note: 與指向的類型無關;轉換要求 reinterpret_cast、C 樣式轉換或函數樣式轉換

(4)配置屬性–>C/C++–>預編譯頭
選擇:“創建 (/Yc)”
參考:有關無法打開預編譯頭文件錯誤的思考

如果未配置出現錯誤:

1>d:\vs2015\vc\atlmfc\include\afx.h(38): warning C4996: ‘MBCS_Support_Deprecated_In_MFC’: MBCS support in MFC is deprecated and may be removed in a future version of MFC.
1> d:\vs2015\vc\atlmfc\include\afx.h(33): note: 參見“MBCS_Support_Deprecated_In_MFC”的聲明
1> _WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)

1.錯誤1:Enable3dControls問題

參考:Enable3dControls警告

1.1 錯誤信息

1>g:\噴涂機器人\spraying robot\spraying robot\dmcd1.cpp(53): error C4996: ‘CWinApp::Enable3dControls’: CWinApp::Enable3dControls is no longer needed. You should remove this call.
1> d:\vs2015\vc\atlmfc\include\afxwin.h(5224): note: 參見“CWinApp::Enable3dControls”的聲明

1.2 解決方法

定位到代碼:

#ifdef _AFXDLLEnable3dControls(); // Call this when using MFC in a shared DLL #elseEnable3dControlsStatic(); // Call this when linking to MFC statically #endif

主要由于版本問題所導致的,Windows95以后就不需要再調用這兩個函數了,因此使用_MSC_VER對其進行隔離即可:

#if _MSC_VER <= 1200 // MFC 6.0 or earlier #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif #endif

2.錯誤2:外部符號無法解析

參考:vs2015引用lib庫

2.1 錯誤信息

1> DMCd1.cpp
1>DMCd1DLG.obj : error LNK2019: 無法解析的外部符號 _smc_board_init@16,該符號在函數 “protected: virtual int __thiscall CDMCd1Dlg::OnInitDialog(void)” (?OnInitDialog@CDMCd1Dlg@@MAEHXZ) 中被引用

1>DMCd1DLG.obj : error LNK2019: 無法解析的外部符號 _smc_get_position_unit@12,該符號在函數 “protected: void __thiscall CDMCd1Dlg::OnTimer(unsigned int)” (?OnTimer@CDMCd1Dlg@@IAEXI@Z) 中被引用
1>G:\噴涂機器人\Spraying robot\Debug\Spraying robot.exe : fatal error LNK1120: 17 個無法解析的外部命令

2.2 解決方法

(1)配置屬性–>C/C++–>常規–>附加包含目錄
添加:你的LTSMC.lib所在目錄

(2)配置屬性–>鏈接器–>輸入–>附加依賴項
添加:LTSMC.lib

(3)將對應的dll文件放到與exe同一級目錄下

3.顯示結果

編譯后得到一個簡易的控制軟件界面,連接好SMC304后根據文檔設置好以太網參數即可直接控制,隨后便在VS2015上對程序進行進一步修改,實現自定義控制!
例程軟件界面:

SMC304用戶手冊內容:

本例中的 SMC304 的 IP 地址為 192.168.5.11, PC 機設置的 IP 與 SMC304 的 IP 前 3 個字段要相同,第 4 個字段要不同。如圖 3-8 所示, PC 機設置的 IP 設為 192.168.5.6 即可。

PS:由于雷塞公司提供的是32位庫,因此編譯的時候必須選擇x86

總結

以上是生活随笔為你收集整理的雷塞SMC304系列控制器VC6.0例程在VS2015下编译遇到的若干问题及解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 好男人天堂网 | 黄色网一级片 | 欧美性大战久久久久久久 | 国产一区二区三区在线免费观看 | 日韩另类av | 欧美日韩成人在线播放 | 免费黄色一级大片 | 91精品人妻一区二区三区蜜桃2 | 欧美一区二区三区免费观看 | 久久网一区 | 国产一级久久久久毛片精品 | k8yy毛片 | 国产麻豆剧传媒精品国产av | 欧美色激情 | 韩国av免费在线 | 日韩麻豆视频 | 秘密基地免费观看完整版中文 | 免费爱爱网站 | 精品久| 国产少妇一区二区 | 大尺度做爰呻吟舌吻网站 | 亚洲第一综合网站 | 揄拍成人国产精品视频 | 国产二级毛片 | 六月婷婷综合网 | 午夜久久精品 | 亚洲国产日韩av | 亚洲免费精品视频在线观看 | 欧美日韩亚洲在线观看 | 97国产精品久久 | 天堂在线一区 | 欧美国产精品一区二区三区 | 少妇与公做了夜伦理 | 免费成人在线电影 | 日本中文字幕网 | 仙踪林久久久久久久999 | 欧美成人一二三区 | 寡妇一级片 | www.x日本| 秋霞av一区二区三区 | 欧美韩国日本在线 | 亚洲一区二区三区综合 | 国产成人a∨ | 人妻内射一区二区在线视频 | va欧美 | 国产精品主播 | 色婷婷av一区二区三区在线观看 | 欧美日韩国产一级片 | 999精品在线| 一级性生活黄色片 | 亚洲天堂资源 | 国产精品无码久久久久久 | 欧美在线aa | 成人片在线视频 | 大学生一级一片全黄 | 亚洲一卡二卡在线观看 | 欧美精选一区 | 99精品国自产在线 | 在线观看亚洲天堂 | 国产日韩欧美中文字幕 | 古装做爰无遮挡三级聊斋艳谭 | 国产一二三精品 | 日本美女逼 | 日本美女操 | 国产成人精品午夜福利Av免费 | 精品亚洲aⅴ无码一区二区三区 | 女同久久另类69精品国产 | 乌克兰av在线 | 国产精品传媒一区二区 | 国产成人日韩 | 狠狠躁天天躁夜夜躁婷婷 | 欧美亚洲国产一区二区三区 | 日韩在线免费视频 | 久伊人 | 少妇呻吟视频 | 97小视频| 亚洲天堂一级片 | 日韩av片在线播放 | 欧美激情一区二区三区p站 欧美mv日韩mv国产网站app | 伊人热久久 | 欧美激情精品久久久久久免费 | 黄色影音 | 国产黑丝在线视频 | 国内黄色片 | 躁躁躁日日躁 | 国产精品久久久久久久裸模 | 少妇又色又紧又爽又刺激视频 | 久久777| 性一交一乱一乱一视频 | 日本激情一区二区三区 | 淫片网站 | 国产一区二区三区四区 | 麻豆精品国产精华精华液好用吗 | 国产污污网站 | av在线男人天堂 | 久草视频免费在线观看 | 中文字幕免费高清网站 | 国产麻豆91视频 | 青青青青在线 |