[問題] 請問關閉顯示器電源指令的問題

看板C_and_CPP (C/C++)作者 (( >__⊙)-q▄︻═╤═─)時間14年前 (2012/03/09 23:25), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Visual Studio 2008 C++ 問題(Question): 因為我想做個按一下就可以關閉螢幕電源的程式 所以上網找了資料 有網站說用 #include "windows.h" void main() { SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2); } 這樣子就可以關閉顯示器 我開始試後發現 如果用Win32主控台應用程式開啟專案的話 這樣是可以執行 螢幕的確會被關掉 可是如果用Windows Form應用程式開專案再使用這指令就會出現 error C2661: 'System::Windows::Forms::Control::SendMessage' : 多載函式不使用 4 引數 的訊息,我實在是百思不得其解,去估狗也沒有發現有人有這個問題 請問是我哪邊還要改嗎? 那段指令我是把它放在按下按鈕後的事件 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.116.109

03/09 23:26, , 1F
你要不要先查一下兩種專案的差別....
03/09 23:26, 1F

03/09 23:29, , 2F
另外試試寫成 ::SendMessage 能不能用 (前面加兩個冒號)
03/09 23:29, 2F
前面加兩個冒號也不行耶.. 因為SendMessage呼叫API那個寫法VB6也可以用差不多的寫法實現 我不曉得為什麼C++兩種專案的寫法還會不同 我先去查察兩種專案的差別好了XD ※ 編輯: Hankmix 來自: 111.240.116.109 (03/09 23:36)

03/09 23:37, , 3F
不行的錯誤訊息是什麼?完整的貼上來看看
03/09 23:37, 3F
啊 原文我打錯了 是Windows Form應用程式 已改 ※ 編輯: Hankmix 來自: 111.240.116.109 (03/09 23:37) 錯誤變這樣 http://ppt.cc/!WST ※ 編輯: Hankmix 來自: 111.240.116.109 (03/09 23:46) 唔 經過努力估狗後發現 原來是在CLR程式要用SendMessage必須要去 連結器->輸入->其他相依性 的$(NOINHERIT)刪掉 就可以了 真神奇= =... ※ 編輯: Hankmix 來自: 111.240.116.109 (03/10 00:29) ※ 編輯: Hankmix 來自: 111.240.116.109 (03/10 00:43)
文章代碼(AID): #1FMY3z8n (C_and_CPP)
文章代碼(AID): #1FMY3z8n (C_and_CPP)