目前日期文章:201012 (34)

瀏覽方式: 標題列表 簡短摘要
  • Dec 30 Thu 2010 01:53
  • 置頂 停工

用 C 實做 FSM 總算出來了,共二版的完全不同的 code

結果雖然還沒讓自己很滿意,不過也算是一小個結束了。

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

這裡的 heap 管理不是指 console 的 new、malloc 等方式,而是用 win32 api 方式管理;相關的 API 非常多,資料都是從 MSDN 找下來的,有興趣到 MSDN 看更多。

1. 建立 heap

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 相關函式

2. 列舉 process - tlhelp32.h

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

// ==================================
// filename: EnumDeviceDriver.cpp

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

// ==================================
// filename: ListModules2.cpp

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

相關 struct

typedef struct tagMODULEENTRY32 {

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

process 可能會有多個 thread,於是要列舉 thread 時,必須要指定是哪個 process ,所以要給的必要參數是 process id。先看相關 struct

typedef struct tagTHREADENTRY32 {

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

process 管理中,PID 取得是第一步且重要的事,這裡提出二、三種方式取得 process ID

1.  已知視窗名稱

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

psapi.h

使用 psapi.h 會比較麻煩,得到的資訊也比 tlhelp32.h 方式不會比較少,這個例子只是提供簡單的資訊出來而已。使用前需要先連 psapi.lib。由於它的函式引數都特別長,所以這裡會每個引數都一個段行,如果覺得原始碼看得很吃力可以上 MSDN 查詢相關資訊。

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

列舉 process 可用 tlhelp32.h 與 psapi.h,這裡先說明 tlhelp32.h。

tlhelp32.h

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

這幾天在摸程序的相關函式,本來想說寫二、三篇就結束,不過發現其實東西還蠻多的,所以先發個簡介出來,基本上所有的東西在 MSDN 上都找得到,只是要花時間去理解、去看而已。沒學過作業系統,查過網路上一些資料、翻一些書後,整理述敘如下(發現有誤也請更正):

1. program: 程式,一群程式碼集合,事實上它是死的,一直放在電腦的某個角落。

edisonx 發表在 痞客邦 PIXNET 留言(1) 人氣()

1. 刪除檔案

(1) C/C++ - remove / stdio.h

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 名稱定義

Dim $Arr[維度1][維度2][維度3]...[維度N]

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 陣列之宣告

陣列和一般變數不同,一般變數可以不經由宣告就可以使用,但陣列一定要先行宣告,宣告可用 Global、Local、Dim,如下所示

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. ContinueLoop

和 C 語言的 Continue 相似,必須與 If-Else-Then 合用,當條件成立時,此次回圈不執行,直接執行下個回圈。以 1+3+5...+11 為例

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 善用內建函式庫

事實上 AutoIt 已提供了非常多的現有函式庫,要去調用時,必須知道那些現有函式是存在於哪些函式庫裡。而這些現有函式庫,在安裝時都已安裝於 C:\Program Files\AutoIt3\Include (筆者電腦之作業系統為 XP,AutoIt 版本為 3.3) 。而要調用這些現有的函式庫,可加上這麼一段敘述

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 大小寫問題

AutoIt 對於大小寫並不敏感,所以 $Var 和 $var 及 $VAR 其實都是一樣的東西。

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

和一般程式語言一樣, AutoIt 也可自定義函式。自定義函式寫法如下

Func  函式名稱(引數)

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

AutoIt 回圈大致上分成五類 (1) For... Next (2) While... WhileEnd (3) Do... Until (4) For... In... Next (5) With... EndWith。其中第五項 With... EndWith 必須以物件為對象,此處暫不談論,只說明前四種方式,以1+2+3...+10為例,分述如下。

1. For... Next

edisonx 發表在 痞客邦 PIXNET 留言(0) 人氣()

AutoIt 條件判斷式主要分成3種,If ... Then... Else、 Select ... Case、 Switch ... Case ,分敘如下所述。

1. If... Then... Else

edisonx 發表在 痞客邦 PIXNET 留言(1) 人氣()

1 2

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼