2011-06-20 21 views
0

我正在試驗低級編程,我對此一無所知。我想捕獲輸入到顯示器,將其存儲在磁盤上的某個位置,然後在稍後將其返回到屏幕。雖然我當然知道如何寫入磁盤,但我必須瞭解如何以這種方式操作顯示器。如果有人能給我一些指點/鏈接,我將非常感激。 我知道ruby和java,但我假設ruby是一種高級語言,並不適合這種任務。我願意看看所需的任何新語言。操作發送給監視器的信號

回答

1

Java也是一種非常高級的語言,因爲它建立在虛擬機上。正因爲如此,對監視器等組件的低級手動操作只能通過循環方法來實現。然而,有一個Robot API,允許你做這些事情。機器人有創建屏幕捕捉和移動鼠標的方法,但是它沒有改變屏幕像素的方法。爲此,您必須查看一些GUI庫,例如Swing,SWT和RCP。

如果你想要做一些真正的低級編程,你應該檢查出不同的語言,如C或C++。

+0

由於與Ruby的關係,我可能會考慮C,因爲我的實驗有兩個目的。給定C,我應該研究哪些技術,在顯示屏幕之前抓取屏幕輸出並通過互聯網將其發送到遠程桌面程序等等。 – providence

+0

如何使用VNC? –

+0

我不知道在使用C到達屏幕之前是否可以截取屏幕數據,但我很可能是錯的。不幸的是,我沒有用C編寫太多的代碼,所以我不能給你一個具體的答案。我建議谷歌搜索「用C屏幕截圖」,然後「與C網絡」。祝你好運! –

1

如果要從屏幕截圖創建電影,請查看this answer。但是,如果您想要捕獲60hz的全部顯示器帶寬(例如捕獲電影播放時的情況),我不認爲僅憑軟件就可以實現這一點,除非通過修改視頻卡驅動程序。你可以購買一個「視頻採集卡」,它可以直接採集通過DVI或模擬信號發送的數據以獲得最佳質量,但它們並不便宜。

1

如果您使用的是基於Unix的系統,您可能希望通過ssh查看X11轉發,那麼您可能會對您自己的客戶端進行類似的操作。儘管如此,這還是相當高的。