原创 DLL 導入段 import section

1.爲什麼需要導入段?要回答這個問題... 我們得了解可執行文件執行的過程..①啓動一個可執行模塊的時候(通常是EXE文件..).操作系統的加載程序(以後簡稱加載程序)會先創建一個進程,然後通過內存映射文件.把整個exe文件映射到這個進程

原创 c/c++ Exceptions

Exceptions provide a way to react to exceptional circumstances (like runtime errors) in programs by transferring contro

原创 makefile $@ $^ $%

makefile中的自動化變量$@,$%,$   自動化變量  模式規則中,規則的目標和依賴文件名代表了一類文件名;規則的命令是對所有這 一類文件重建過程的描述,顯然,在命令中不能出現具體的文件名,否則模式規則失去 意義。那麼

原创 DLL重定向

DLL 夢魘   問題竟嚴重到如此境地,甚至於自身都背有這麼惡劣的綽號。當您安裝某個程序時,另一個看似與之無關的程序忽然停止工作。原因出乎您的意料,這兩個程序通過一個共享的 DLL 文件產生了某種聯繫。它們對於系統目錄中應該存在哪種

原创 c++

7-zip TCMalloc MultiGet  http://www.oschina.net/project/lang/21/c?tag=0&os

原创 setjmp.h

本人首次發帖 ,謝謝大家! 首先該頭文件有三個: setjmp 宏函數、longjmp函數、jmp_buf類型 setjmp用來保存jmp_buf類型的變量: 表示當前運行點的環境狀態, 然後longjmp函數來返回上次設置的運行環境變

原创 declspec(dllexport) _declspec(dllimport)

__declspec(dllexport) & __declspec(dllimport) 1.使用 __declspec(dllexport) 從 DLL 導出  Microsoft 在 Visual C++ 的 16 位編譯器版本

原创 DLL注入和API 攔截

一.註冊表注入 AppInit_DLLs值在以下註冊表項中找到: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows 在此值中指定的所有 Dll

原创 PE

點贊 收藏 分享 文章舉報 _伊萬 發佈了18 篇原創文章 · 獲贊 2 · 訪問量 2萬+ 私信 關注

原创 Linux下Fork與Exec使用

一、引言   對於沒有接觸過Unix/Linux操作系統的人來說,fork是最難理解的概念之一:它執行一次卻返回兩個值。fork函數是Unix系統最傑出的成就之一,它是七十年代UNIX早期的開發者經過長期在理論和實踐上的艱苦探索後取得

原创 netstat 命令

常見參數 -a (all)顯示所有選項,默認不顯示LISTEN相關 -t (tcp)僅顯示tcp相關選項 -u (udp)僅顯示udp相關選項 -n 拒絕顯示別名,能顯示數字的全部轉化成數字。 -l 僅列出有在 Listen (監聽)

原创 MEMORY_BASIC_INFORMATION中 BaseAddress 和 AllocationBase 區別

地址空間在運行中映射爲實際的物理頁面。   ·        區域 區域指的是上述地址空間中的一片連續地址。區域的大小必須是粒度(64k) 的整數倍,不是的話系統自動處理成整數倍。不同CPU粒度大小是不一樣的,大部分都是64K

原创 Win32多線程編程 — 線程局部存儲

預留內存攜帶附加信息的設計 有時候,將數據與一個對象的實例關聯起來是很有幫助的。這種設計要求預留一定的內存,一倍特定附加數據的存儲。 通過調用SetWindowWord或SetWindowLong函數將數據與一個指定的窗口關聯起來,數據保

原创 PE

$Id: pe.txt,v 1.9 1999/03/20 23:55:09 LUEVELSMEYER Exp $ The PE file forma

原创 STUN和TURN技術淺析

在現實Internet網絡環境中,大多數計算機主機都位於防火牆或NAT之後,只有少部分主機能夠直接接入Internet。很多時候,我們希望網絡中的兩臺主機能夠直接進行通信,即所謂的P2P通信,而不需要其他公共服務器的中轉。由於主機可能位