Cracking part 19

Chia sẻ: Dqwdasdasd Qwdasdasdasd | Ngày: | Loại File: PDF | Số trang:6

0
36
lượt xem
3
download

Cracking part 19

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Nếu function hoàn thành , giá trị trả về là chiều dài của chuỗi (chỉ tính những kí tự) được copy (không tính những kí tự null). Nếu window không có title bar hoặc text, hoặc title bar được để trống, hoặc window hay control handle invalid, giá trị trả về là 0. Để có thêm thông tin về lỗi , chúng ta dùng hàm GetLastError, Hàm này không thể tìm text của edit control trong application nào khác

Chủ đề:
Lưu

Nội dung Text: Cracking part 19

  1. int nMaxCount // maximum number of characters to copy ); Returns Nếu function hoàn thành , giá trị trả về là chiều dài của chuỗi (chỉ tính những kí tự) được copy (không tính những kí tự null). Nếu window không có title bar hoặc text, hoặc title bar được để trống, hoặc window hay control handle invalid, giá trị trả về là 0. Để có thêm thông tin về lỗi , chúng ta dùng hàm GetLastError, Hàm này không thể tìm text của edit control trong application nào khác. GetWindowWord Hàm GetWindowWord có nhiệm vụ tìm giá trị 16bit tại specified offset và đưa nó vào extra window memory cho specified window. Code: WORD GetWindowWord( HWND hWnd, // handle of window int nIndex // offset of value to retrieve ); Returns Nếu function hoàn thành , giá trị trả về là giá trị 16bit Nếu function không hoàn thành , giá trị trả về là 0. Để biết thêm thông tin về lỗi, chúng ta dùng hàm GetLastError. SendDlgItemMessage / SendDlgItemMessageA / SendDlgItemMessageW Hàm SendDlgItemMesage có nhiệm vụ gởi message đến specified control trong dialog box. Code: LONG SendDlgItemMessage( HWND hwndDlg, // handle of dialog box int idControl, // identifier of control UINT uMsg, // message to send WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ); Returns Giá trị trả về ghi kết quả của message processing và dựa vào message đã được gởi. 03.7 Time & Date Accesses ================= GetFileTime Hàm GetFileTime có nhiệm vụ tìm ngày và giờ mà file được tạo (giống như ngày sinh tháng đẻ của chúng ta dzậy đó) , lần sử dụng gần nhất, và lần sửa đổi gần nhất. Code:
  2. BOOL GetFileTime( HANDLE hFile, // identifies the file LPFILETIME lpCreationTime, // address of creation time LPFILETIME lpLastAccessTime, // address of last access time LPFILETIME lpLastWriteTime // address of last write time ); Returns Nếu function hoàn thành , giá trị trả về là TRUE. Nếu function không hoàn thành, giá trị trả về là FALSE. Đễ biết thông tin về lỗi, chúng ta dùng hàm GetLastError. GetLocalTime Hàm GetLocalTime có nhiệm vụ tìm ngày và giờ hiện tại. Code: VOID GetLocalTime( LPSYSTEMTIME lpSystemTime // address of system time structure ); Returns Hàm này không có giá trị trả về GetSystemTime Hàm GetSystemTime có nhiệm vụ tìm ngỳa và giờ hiện tại của hệ thống. Giờ hệ thống được ghi ở trong Coordinated Universal Time (UTC) Code: VOID GetSystemTime( LPSYSTEMTIME lpSystemTime // address of system time structure ); Returns Hàm này không có giá trị trả về . GetTickCount Hàm GetTickCount có nhiệm vụ tìm số millisecond (một phần nghìn giây) kể từ khi máy tính được mở Code: DWORD GetTickCount(VOID); Returns Nếu function hoàn thành , giá trị trả về là số millisecond đã trôi qua kể từ khi ta mở máy tính. SystemTimeToFileTime Hàm SystemTimeToFileTime có nhiệm vụ đổi giờ hệ thống sang file time. Code: BOOL SystemTimeToFileTime(
  3. CONST SYSTEMTIME * lpst, // address of system time to convert LPFILETIME lpft // address of buffer for converted file time ); Returns Nếu function hoàn thành, giá trị trả về là TRUE. Nếu function không hoàn thành, giá trị trả về là FALSE. Để biết thêm thông tin về lỗi, chúng ta dùng hàm GetLastError. 03.8 Window Generating =============== BitBlt Hàm BitBlt có nhiệm vụ perform bit-block transfer của màu dữ liệu tương ứng đến rectangle của pixel từ specified source device context vào destination device context. Code: BOOL BitBlt( HDC hdcDest, // handle of destination device context int nXDest, // x-coord of dest rectangle's upper-left corner int nYDest, // x-coord of dest rectangle's upper-left corner int nWidth, // width of destination rectangle int nHeight, // height of destination rectangle HDC hdcSrc, // handle of source device context int nXSrc, // x-coord of src rectangle's upper-left corner int nYSrc, // y-coord of src rectangle's upper-left corner DWORD dwRop // raster operation code ); Returns Nếu function hoàn thành, giá trị trả về là TRUE. Nếu function không hoàn thành, giá trị trả về là FALSE. Để biết thêm thông tin về lỗi, chúng ta dùng hàm GetLastError. CreateWindow Hàm CreateWindow có nhiệm vụ tạo ra overlapped, pop-up hoặc cửa sổ con. Nó chỉ rõ window class, window title, window style, vị trí và kích thước ban đầu của window. Hàm này còn chỉ ra “cha mẹ” hay “chủ nhân’ của window và menu của window. Code: HWND CreateWindow( LPCTSTR lpClassName, // address of registered class name LPCTSTR lpWindowName, // address of window name DWORD dwStyle, // window style int x, // horizontal position of window int y, // vertical position of window int nWidth, // window width int nHeight, //window height
  4. HWND hWndParent, // handle of parent or owner window HMENU hMenu, // handle of menu or child-window identifier HANDLE hInstance, // handle of application instance LPVOID lpParam // address of window-creation data ); Returns Nếu function hoàn thành, giá trị trả về là handle của window mới. Nếu function không hoàn thành, giá trị trả về là NULL. Để biết thêm thông tin về lỗi, chúng ta dùng hàm GetLastError. CreateWindowExA / CreateWindowExW Hàm CreateWindowEx có nhiệm vụ tạo ra overlapped, pop-up hoặc cửa sổ con với extended style; còn về những cái khác thì hàm này giống hệt hàm CreateWindow. Những thông tin về việc tạo 1 window và tất cả các thông số khác của hàm CreateWindowEx, các bác xem hàm CreateWindow. Code: HWND CreateWindowEx( DWORD dwExStyle, // extended window style LPCTSTR lpClassName, // address of registered class name LPCTSTR lpWindowName, // address of window name DWORD dwStyle, // window style int x, // horizontal position of window int y, // vertical position of window int nWidth, // window width int nHeight, // window height HWND hWndParent, // handle of parent or owner window HMENU hMenu, // handle of menu, or child-window identifier HINSTANCE hInstance, // handle of application instance LPVOID lpParam // address of window-creation data ); Returns Nếu function hoàn thành, giá trị trả về là handle của window mới. Nếu function không hoàn thành, giá trị trả về là NULL. SendMessageA / SendMessageW Hàm SendMessage có nhiệm vụ gởi specified message đến window hoặc windows. Hàm này gọi window procedure cho specified window và không quay về cho đến khi window procedure gởi xong message. Ngược lại, hàm PostMessage có nhiệm vụ post message đến message của thread và trở về ngay lập tức. Code: LRESULT SendMessage( HWND hwnd, // handle of destination window UINT uMsg, // message to send
  5. WPARAM wParam, // first message parameter LPARAM lParam // second message parameter ); Returns Giá trị trả về ghi kết quả của message processing và dựa vào message đã được gởi. ShowWindow Hàm ShowWindow có nhiệm vụ set trạng thái hiện ra của specified window. Code: BOOL ShowWindow( HWND hwnd, // handle of window int nCmdShow // show state of window ); Returns Nếu window được thấy, giá trị trả về là TRUE. Nếu window bị che, giá trị trả về là FALSE. UpdateWindow Hàm UpdateWindow có nhiệm vụ cập nhật client area của specified window bằng cách gởi WM_PAINT message đến window nếu vùng update của window không trống. Hàm này gởi thẳng WM_PAINT message đến window procedure của specified window, bỏ qua application queue. Nếu vùng update trống thì message sẽ không được gửi đi. Code: BOOL UpdateWindow( HWND hwnd // handle of window ); Returns Nếu function hoàn thành, giá trị trả về là TRUE. Nếu function không hoàn thành, giá trị trả về là FALSE. PHẦN 4 : Kiến thức về lệnh nhảy (jump) JCC - Lệnh nhảy có điều kiện Code: 77 cb JA rel8 Jump short if above (CF=0 and ZF=0) 73 cb JAE rel8 Jump short if above or equal (CF=0) 72 cb JB rel8 Jump short if below (CF=1) 76 cb JBE rel8 Jump short if below or equal (CF=1 or ZF=1) 72 cb JC rel8 Jump short if carry (CF=1) E3 cb JCXZ rel8 Jump short if CX register is 0 E3 cb JECXZ rel8 Jump short if ECX register 0 74 cb JE rel8 Jump short if equal (ZF=1) 7F cb JG rel8 Jump short if greater (ZF=0 and SF=OF)
  6.  
Đồng bộ tài khoản