簡體   English   中英

使用python 2.7進行劫持,重定向和顯示輸出

[英]Hijacking, redirecting, display output with Python 2.7

我是一位經驗不足的新程序員,但我正在學習Python 2.7。 我使用Python(x,y)或Spydar,因為在Windows 7上調用了程序。

我使用的主要軟件包是numpypil和可能的win32gui

我目前正在嘗試編寫一個程序來從第三方軟件中挖掘信息。 這違背了他們的意願,使他們感到困難。 我正在使用ImageGrab ,然后使用numpy獲得一些結果。 但是,這大概讓我相信,這迫使我將要閱讀的窗口保持在焦點上,這不是最佳選擇。

我想知道是否有任何方法可以劫持整個窗口並將輸出直接重定向到“虛擬”副本,以便讓它在后台運行?

查看win32api的演示時,有一個名為desktopmanager的腳本。 我從來沒有運行過它,大概是因為我正在運行Windows 7,所以應該創建新的桌面。 我真的不知道多個桌面如何工作,但是如果它們並行運行,則可能存在一種在當前窗口周圍創建新桌面的方法。 我不知道如何,到目前為止只是一個想法。

它對我不起作用的原因不是不是在創建新的桌面,而是一旦創建了它,我就無法從它返回。 任務欄圖標或任務欄本身都不會出現。

一種可行的方法是執行以下操作:

  • 獲取窗口句柄(FindWindow()或類似的東西,有幾種方法可以做到這一點)
  • 獲取窗口尺寸(GetClientRect()或GetWindowRect())
  • 獲取窗口的設備上下文(GetWindowDC())
  • 從窗口獲取圖像數據(BitBlt()或類似圖像)

可能需要提升特權才能訪問另一個進程窗口dc,如果這樣做,則可能需要將代碼/ dll注入目標進程空間中才能執行此操作。

HTH。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM