spy源碼
⑴ C# 別人軟體里邊做好的文本框,我如何給他賦值並且提交,最好有源碼可供參考,如有合適的,將高額追加分
可以用WINDOWS api函數實現。
下面的WINDIWS API引用部分的代碼,放入 class 內部
[DllImport ( "user32.dll", EntryPoint = "FindWindow", SetLastError = true )]
private static extern IntPtr FindWindow( string lpClassName, string lpWindowName );//查找窗口句柄
[DllImport ( "user32.dll", EntryPoint = "FindWindowEx", SetLastError = true )]
private static extern IntPtr FindWindowEx( IntPtr hwndParent, uint hwndChildAfter, string lpszClass, string lpszWindow );//查找窗口內控制項句柄
[DllImport ( "user32.dll", EntryPoint = "SendMessage", SetLastError = true, CharSet = CharSet.Auto )]
private static extern int SendMessage( IntPtr hwnd, uint wMsg, int wParam, int lParam );//發送消息
[DllImport ( "user32.dll", EntryPoint = "SetForegroundWindow", SetLastError = true )]
private static extern void SetForegroundWindow( IntPtr hwnd );// 設置窗口為激活狀態
哈哈,現在可以開工了。我就用QQ的自動登錄為列子
下面是你winfrom窗口的按鈕事件:
private void button1_Click( object sender, EventArgs e )
{
const uint WM_SETTEXT = 0x000C;//設置文本框內容的消息
const uint BM_CLICK = 0xF5; //滑鼠點擊的消息,對於各種消息的數值,你還是得去查查API手冊
IntPtr hwndCalc = FindWindow ( null, "QQ2011" ); //查找QQ2011的窗口句柄
if ( hwndCalc != IntPtr.Zero )//找到啦
{
IntPtr hwndLogin= FindWindowEx ( hwndCalc, 0, null, "安全登錄" ); //獲取登陸按鈕的句柄
IntPtr hwndQ = FindWindowEx ( hwndCalc, 0, 「ComboBox」, "" ); //獲取QQ號碼輸入框的控制項句柄
IntPtr hwndP = FindWindowEx ( hwndCalc, 0,"Edit", 「」 ); //獲取密碼輸入框的控制項句柄 SetForegroundWindow ( hwndCalc ); //將QQ窗口設置為激活
System.Threading.Thread.Sleep ( 1000 ); //暫停1秒讓你看到效果
SendMessage ( hwndQ, WM_SETTEXT, TextBox1.Text, 0 );//發送文本框1裡面的內容(QQ號啦)
System.Threading.Thread.Sleep ( 1000 ); //暫停1秒讓你看到效果
SendMessage( hwndP, WM_SETTEXT, TextBox2.Text, 0 );//發送文本框2裡面的內容(QQpassword)
System.Threading.Thread.Sleep ( 1000); //暫停1秒讓你看到效果
SendMessage ( hwndLogin, BM_CLICK, 0, 0 );//點擊登錄
}
else
{
MessageBox.Show ("沒有啟動 [QQ2011]");
}
}
純手打,我這邊沒VS編譯器,樓主只有自己測試咯。。不懂可以再問我QQ215811605
⑵ 如何使用ILSpy 把發布版本反編譯成源碼
打開發布的文件,看到裡面的bin目錄。
第1步:創建一個web站點(ASP.ent),將所有的發布文件都拷貝進去。
第2步:打開ILSpy ,---文件---打開---bin目錄里的一個dll文件,
第3步:文件--保存代碼,就可以把這個dll保存成一個有源代碼的項目文件(Hidistro.SaleSystem.Member.csproj)。
第4步:在剛剛創建的web站點,將Hidistro.SaleSystem.Member.csproj 項目添加進去;
第5步:一次類推,將所有需要反編譯的dll都弄成源碼添加到web站點;
第6步:生成整個解決方案,一看有很多報錯信息,沒關系,咱們一個一個來解決; 這里的報錯信息絕大部分都是因為 沒有引用dll或者是項目之間沒有引用上造成的。知道原因後,我們就好解決了。
⑶ EXE文件反編譯成源碼
EXE文件可以通過步驟來反編譯成源碼,具體步驟如下:
1、在網路上搜索下載反編譯工具ILSpy,ILspy是一個開源的.net反編譯軟體,使用十分方便。解壓後如圖,雙擊.exe文件打開解壓工具。
(3)spy源碼擴展閱讀:
反編譯也稱為計算機軟體還原工程,是指通過對他人軟體的目標程序(比如可執行程序)進行「逆向分析、研究」工作,以推導出他人的軟體產品所使用的思路、原理、結構、演算法、處理過程、運行方法等設計要素,某些特定情況下可能推導出源代碼。
exe是編譯好的程序文件 要看結構就得反編譯 但是通常不能把可執行文件變成高級語言源代碼,只能轉換成匯編程序。 所以要要看結構不止要會反編譯 還得精通匯編語言。
⑷ 如何查看exe文件的源代碼
需要准備的工具:電腦,反編譯工具ILSpy。
1、首先在網路上搜索下載反編譯工具ILSpy,解壓後如圖,雙擊.exe文件打開解壓工具。
⑸ 網上有一款軟體AccExplorer,我想知道他怎麼實現的一下功能,求指導,求C#WinForm源碼
findwindow什麼的是不行的,大公司軟體用的都是新界面技術,directUI,你只能得到最外層的父窗口句柄,裡面的控制項都是繪制出來的邏輯控制項,沒有句柄,你用spy++和accexplorer分別捕捉一個聊天窗口就知道了,spy++用的就是普通的enumwindows,只能看到最外層的TXGUIFoundation,有興趣加一零四三三三四七一七
⑹ 誰用C#做過spy++的程序,小弟有點問題,想請大俠幫忙,怎麼獲取panel中控制項中的內容,麻煩寫具體點,
先申明api:
[DllImport("user32.dll", EntryPoint = "SendMessage")]
internal static extern int SendMessage(IntPtr hWnd, int msg, int wParam, StringBuilder lParam);
最好再定義一個枚舉:
internal enum WinMsgType
{
WM_GETTEXT = 0x000D,
}
然後相關代碼如下:
const int bufferLen = 1024;
var buffer = new StringBuilder(bufferLen);
SendMessage(hWnd, WinMsgType.WM_GETTEXT, 1024, buffer);//hWnd為控制項句柄
return buffer.ToString();
⑺ 求一個C#模擬spy++查找窗口功能的源代碼
HWND handle=(HWND)X2051A;
不好意思
少了個0
HWND handle=(HWND)0X2051A;
0X2051A就是表示16進制的數
另外,虛機團上產品團購,超級便宜
⑻ 如何查看exe文件的源代碼
摘要 你好,1、首先在網路上搜索下載反編譯工具ILSpy,解壓後,雙擊.exe文件打開解壓工具。
⑼ 如何用ILspy反編譯一個程序
網路搜索ILspy, 並進入官網下載該軟體
下載完成後,將ILspy的壓縮包解壓
雙擊ILspy打開該軟體
打開該軟體後,點擊File後,再點擊打開
在打開窗口裡找到你想反編譯的程序後,再點擊打開
現在我們就可以看到該程序的源碼了
如果我們想把這段源碼導出一個cs文件,我們就選中你想導出的一個類,點擊File 再點擊Save code 然後再選擇路徑即可導出cs文件了!
8
現在我們就可以用Visual Studio或SharpDevelop打開這個cs文件了!
⑽ 製作自己的spy++
這個問題很專業,我不太懂,但我提供一個思路,我在學VBA時,經常遇到問題到論壇中去求助,版主都是非常熱心的,你只需在版主幫你解決問題後給他加上相應的魅力值或其它的積分或表示感謝。
你也可以到相應的論壇中求助,一定會有熱心的版主幫你的。
助你成功!