UpdateData線上程中出錯的解決辦法 .
最近在寫一個監視程式,需要定時檢視共享記憶體中的各個值。於是在MFC中,首先開了一個執行緒,用的是boost的timer,每隔1秒讀取共享記憶體中的值,另外一個執行緒通過呼叫UpdateData(FALSE)將值顯示在介面上。但是在我除錯的時候發現,UpdateData一直報錯。
最後查了下,還是執行緒的問題,線上程中,不能直接用UpdateData來更新數值。解決的辦法,應該自己定義一個訊息,將UpdateData(FALSE)替換為SendMessage(WM_UPDATEDATA, FALSE)就可以了。具體的做法如下:
首先,定義訊息和回撥函式
加入函式對映
- #define WM_UPDATEDATA WM_USER + 1
- LRESULT OnUpdateData(WPARAM wParam, LPARAM lParam);
- ON_MESSAGE(WM_UPDATEDATA, OnUpdateData)
最後,實現回撥函式
- LRESULT CXXXDlg::OnUpdateData(WPARAM wParam, LPARAM lParam)
- {
- UpdateData(wParam);
- return 0;
- }
相關推薦
UpdateData線上程中出錯的解決辦法 .
最近在寫一個監視程式,需要定時檢視共享記憶體中的各個值。於是在MFC中,首先開了一個執行緒,用的是boost的timer,每隔1秒讀取共享記憶體中的值,另外一個執行緒通過呼叫UpdateData(FALSE)將值顯示在介面上。但是在我除錯的時候發現,UpdateData一直報錯。 最後查了下,還是執行緒的
Oprofile編譯過程中出錯解決辦法
“liberty library not found” error when configuring Oprofile 解決辦法: $sudo apt-get install libiberty-dev “bfd library not found”
Delphi 在DLL中使用DevExpress控制元件時出錯解決辦法
測試環境 DevExpress VCL 14.1.3 和XE7 問題:在dll使用cxGrid控制元件時 如果不新增列標題 則不報錯 查詢無資料集顯示,如果加上標題 就報錯了 這段為報錯部分 function TcxCustomGridTableItem.CanFilt
office中mathtype出錯解決辦法
前提說明:此文只針對office2010,如果是2013需要將資料夾中的office2014換為office2015,此資料夾在你的安裝目錄下找 1、錯誤提示: 2、或者: 3、甚至執行時出現的: 解決方法 1、要確保路徑被office信任。依次開啟
關於線上程中使用AfxGetMainWnd()出錯的問題
AfxGetMainWnd()得到的是當前執行緒的主視窗(如果有的話). 因為主視窗是屬於主執行緒的,所以想得到主視窗HWND值, 只能在主執行緒中用AfxGetMainWnd(),但要不是處在主執行緒中, AfxGetMainWnd()可能是從當前執行緒查詢主視窗的。但好像 AfxGetMainWnd()不
【分享】Brackets安裝emmet插件出錯解決辦法
racket img 復制 end 查看 解決辦法 目錄 nal get 1.復制下方鏈接,迅雷下載文件得到:brackets-emmet-1.2.1.zip文件 https://s3.amazonaws.com/extend.brackets/brackets-em
PHP-FPM子進程過少解決辦法
永遠 setting -m 20M 系統負載 com child spa reac /usr/local/php/var/log/php-fpm.log報一下錯誤 server reached pm.max_children setting (5), consider ra
Django(博客系統):重寫了auth.User後使用createsupperuser出錯解決辦法
run app back logs turn ida utili command ron 背景:重寫django的系統User後,使用createsupperuser創建用戶失敗 由於項目需要擴展django默認新的auth.User系統(添加兩個字段:頭像、簡介等字段)
Centos6.7 運行 eclipse出錯解決辦法
版本 ftw 5.4 ast 得到 res setting eclipse 成功 今天在centos下運行eclipse c++出現來點問題。主要原因是jdk點安裝以及環境變量始終不對。嘗試在/etc/profile中手動配置,也沒有成功。做了如下步驟成功解決。1.查看jd
網卡速率變化導致paramiko模塊timeout的失效,多線程超時控制解決辦法。
context .com 判斷 cep util sha fff fail stdout 起因: 上周給幾個集群的機器升級軟件包,每個集群大概兩千臺服務器,但是在軟件發包和批量執行命令的過程中有兩個集群都遇到了問題,在批量執行命令的時候總是會在後面卡住久久不能退出
ubuntu16.04 ssh服無法遠程連接解決辦法
alt tro res star serve rmi onf 解決辦法 mission 1、安裝ssh服務sudo apt-get install openssh-server 2、修改配置文件sudo vi /etc/ssh/sshd_config#PermitRoot
cookie寫入中文出錯解決辦法
ascii string value code urldecode 解決辦法如下 出錯 url ring 環境:tomcat7,Java8 當cookie寫入中文會引發異常。所以這樣看來Cookie默認支持的編碼方式是ASCII碼。不能對中文進行編碼和解碼。 解決辦法如下
eclipse打斷點只進入class文件中的解決辦法
java項目 inf src ima 就會 fin .html defined 技術分享 內容來源 https://www.cnblogs.com/scode2/p/8671908.html#undefined 是由於對應的Java類跟編譯後的class文件,沒有關聯上,
eclipse打斷點只進入class檔案中的解決辦法
內容來源 https://www.cnblogs.com/scode2/p/8671908.html#undefined 是由於對應的Java類跟編譯後的class檔案,沒有關聯上, 解決辦法: 在打斷點除錯的時候,如果發現進入到了class檔案,先彆著急關閉class檔案,在該class檔案
openssl編譯出錯解決辦法
./libcrypto.so: warning: gethostbyname is obsolescent, use getnameinfo() instead. ./libcrypto.so: undefined&nb
ubuntu apt 安裝軟體時 出現(--configure)時出錯解決辦法
好像是因為以前在更新系統時強制中斷的原因, 後來更新軟體經常卡在一個地方不動,然後報(–configure)時出錯。 sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old # 現將info資料夾更名 sudo mkdir /var/lib/d
vue-cli 腳手架、vue元件引入圖片出錯解決辦法
問題:vue-cli腳手架中 元件相互巢狀,圖片路徑報錯。 解決辦法:首先把圖片引入進來,然後再付給data(); <template> <img :src="picUrl"/> </template> <style> <
ubuntu啟動virtualbox出錯解決辦法:RTR3InitEx failed with rc=-1912 (rc=-1912)
好不容易安裝成功,也不知道怎麼搞的,啟動出錯 怎麼辦?全部刪除: sudo apt-get autoremove 'virtualbox*' E: dpkg 被中斷,您必須手工執行 ‘sudo dpkg --configure -a’ 解決此問題。 sudo dpkg -
error C2248: “CObject::CObject”: 無法訪問 private 成員(在“CObject”類中宣告)---解決辦法
如果自己定義了一個類,該類自身沒有過載賦值運算子(=)或者拷貝建構函式(把類物件作為引數直接傳入)都會造成此錯誤 在我們定義的Class中如果需要繼承,或者是必須繼承Object類時,我們又需要對類的物件進行操作是,會出現: error C2248: “CObject::COb
“操作無法完成因為其中的資料夾或檔案已在另一個程式中開啟”解決辦法
在windows系統中,我們經常會遇到這樣一個問題:刪除某一個檔案或者資料夾,被提醒:操作無法完成,因為其中的資料夾或檔案已在另一個程式中開啟。 這個時候我們一般會先檢查是否真的有程式或者檔案打開了沒有關閉,但是我們在桌面或者工作管理員中找不到該程式。這個問題困擾了我很久,認為下次重啟