討論區快速選單
知識庫快速選單
討論區最近新進100則主題 網路投保旅行平安險 傑米的攝影旅遊筆記
[ 回上頁 ] [ 討論區發言規則 ]
winform中使用findwindow API
更改我的閱讀文章字型大小
作者 : x2163126(吃冬瓜補西瓜)
[ 貼文 38 | 人氣 0 | 評價 20 | 評價/貼文 0.53 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/22 上午 01:31:55
using namespace System::Runtime::InteropServices;

[DllImport("user32", EntryPoint="MessageBox")]
extern "C" int MsgBox(int hWnd,String^ pText,String^ pCaption,unsigned int uType);

typedef void* HWND;
[DllImport("user32", EntryPoint="FindWindow")]
extern "C" int FindWindow (String^ lpClassName,String^ lpWindowName);

...
...

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
IntPtr hwd1 ;
hwd1=::TestFindWindow::FindWindow(NULL,"findwindow");
if(hwd1 ==IntPtr::Zero){
::TestFindWindow::MessageBox::Show("請開啟findwindow");
return;
}

 }

錯誤訊息
 error C2065: 'NULL' : 未宣告的識別項

這是我測試在winform中使用API的程式
要讓他有找到findwindow這個視窗,並且show出messageBox
請問該如何改正!!
作者 : qazujm(joe) Visual Basic卓越專家C#優秀好手貼文超過1000則
[ 貼文 1521 | 人氣 2524 | 評價 9070 | 評價/貼文 5.96 | 送出評價 90 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/22 上午 10:03:15
Process.GetProcessesByName 方法 (String)
http://msdn.microsoft.com/zh-tw/library/z3w4xdc9%28VS.80%29.aspx

MessageBox 類別
http://msdn.microsoft.com/zh-tw/library/system.windows.forms.messagebox.aspx
作者 : x2163126(吃冬瓜補西瓜)
[ 貼文 38 | 人氣 0 | 評價 20 | 評價/貼文 0.53 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/22 上午 11:10:14
@@這位大大,您放兩篇網址的意思是叫我不要用API嗎

直接使用它提供的函式??

雖然也是一種方法,但我想知道我為什麼錯.....
作者 : qazujm(joe) Visual Basic卓越專家C#優秀好手貼文超過1000則
[ 貼文 1521 | 人氣 2524 | 評價 9070 | 評價/貼文 5.96 | 送出評價 90 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/22 下午 10:57:40
"HWND ::ShowWindow(hwnd,SW-HIDE);"是什么意思
http://zhidao.baidu.com/question/197853970.html
作者 : x2163126(吃冬瓜補西瓜)
[ 貼文 38 | 人氣 0 | 評價 20 | 評價/貼文 0.53 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/23 上午 01:14:21
qazujm(joe)你好,請問你發這個的用意是什麼??

網址我也都點進去看過了,但還是不能解決我的問題(可能我比較笨)

我又不想用spy++直接找classname(getclassname可以找到嗎???)

我的問題是 為什麼我lpclassname這個參數 我填入NULL 他會顯示未宣告

我看C#或其他例子,也都填NULL,但只有我出錯

有人能解答我這問題嗎
作者 : x2163126(吃冬瓜補西瓜)
[ 貼文 38 | 人氣 0 | 評價 20 | 評價/貼文 0.53 | 送出評價 7 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2011/11/23 上午 01:18:21
== 我真的很無言

剛剛突然一想 他說我沒宣告 我就宣告一個NULL

private:
/// <summary>
/// 設計工具所需的變數。
String^ NULL;
/// </summary>

結果就可以了@@

到此結案!!
作者 : qazujm(joe) Visual Basic卓越專家C#優秀好手貼文超過1000則
[ 貼文 1521 | 人氣 2524 | 評價 9070 | 評價/貼文 5.96 | 送出評價 90 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
主題發起人x2163126註記此篇回應為最佳解答 2011/11/23 上午 10:43:28
hwd1=FindWindow(nullptr,"findwindow");

因為CLI沒有NULL,如果網址內容有看的話...
 板主 : 徵求中
 > Visual C++ .NET - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - Visual C++ .NET - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
Visual C++ .NET
1 青衫 2220 
2 Raymond 1500 
3 joe 520 
4 冷眼 350 
5 CodeWarrior 260 
6 marlon 230 
7 小朱 210 
8 windblown 200 
9 XWLin 120 
10 小約翰 120 
Visual C++ .NET
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/
0.03125