摘要:# pip install xlsxwriter import xlsxwriter import datetime # 创建excel文件 excel_ = xlsxwriter.Workbook('test_excel.xlsx') # 创建sheet表单 sheet_ = excel_.add
阅读全文
摘要:1 进程通信 1.1 SendMessage 消息 WM_COPYDATA LRESULT SendMessage( HWND hWnd, // handle to destination window WM_COPYDATA, // message to send WPARAM wParam, /
阅读全文
摘要:2 注入 2.1 Hook Hook链表,由系统来维护,最新安装的钩子放在链的开始,而最早安装的钩子放在最后,也就是后加入的先获得控制权。Windows 并不要求钩子子程的卸载顺序一定得和安装顺序相反。每当有一个钩子被卸载,Windows 便释放其占用的内存,并更新整个Hook链表。如果钩子在尚未卸
阅读全文
摘要:1 动态连接库/静态连接库 1.1 动态库.dll.ocx.cpl 动态库在程序运行是才被载入。不同的应用程序如果调用相同的库,那么在内存里只需要有一份该共享库的实例,规避了空间浪费问题(引用技术),只需要更新动态库,增量更新。 动态库不能直接运行,也不能接收消息。它们是一些独立的文件,其中包含能被
阅读全文
摘要:http://blog.sina.com.cn/s/blog_4b666dd80100x8hl.html
阅读全文
摘要:界面线程与工作者线程 二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。 用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。
阅读全文
摘要:定义定时器ID #define TIMER_ID_CONTROL1 10000 #define TIMER_ID_CONTROL2 10001 #define TIMER_ID_CALLBACK 10002 设置定时器 SetTimer(TIMER_ID_CONTROL1, 1*1000, NULL
阅读全文
摘要:显示托盘 BOOL CMFCTrayDlg::OnInitDialog() { //... //设置托盘图标 //NOTIFYICONDATA m_NofityIcon;//.h设置为成员变量 m_NofityIcon.cbSize = sizeof(NOTIFYICONDATA); m_Nofit
阅读全文
摘要:以补码存储 十进制&二进制转换,表格法 如,123D -> 01111011B 单精度浮点存储 符号位(1 Sign):0正,1负; 指数位(8 Exponent):需要加偏置值Bias,127 + 指数值; 尾数部分(23 Mantissa):弃小数点前那个恒1并在右端以0补全位数; 如,1234
阅读全文
摘要:进程是系统进行资源分配和调度的一个独立单位。 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源,但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。 进程和线程的主要差别在于它们是不同的操
阅读全文
摘要:void CMFCMoveWindowDlg::OnBnClickedButton1() { //left CRect rec; GetWindowRect(&rec); rec.left -= m_iMove; rec.right -= m_iMove; MoveWindow(&rec); } v
阅读全文
摘要:对话框,Accept Files(True) void CMFCDragFileDlg::OnDropFiles(HDROP hDropInfo) { TCHAR szPath[MAX_PATH] = {0}; UINT nCount = DragQueryFile(hDropInfo, 0xFFF
阅读全文
摘要:void CMFCOpenFileOrDirectoryDlg::OnBnClickedButton1() { //打开文件 CFileDialog dlgOpen(TRUE/*TRUE打开,FALSE保存*/, 0, 0, OFN_HIDEREADONLY|OFN_FILEMUSTEXIST, "
阅读全文
摘要:bool IsCharBelongString( IN const char* szIn, IN char ch ) { if (szIn) { while (*szIn) { if (ch == *szIn) { return true; } szIn++; } } return false; }
阅读全文
摘要:new 返回的地址是堆的使用地址,该地址-0x20,得到堆结构首地址heaphead [heaphead],上一个申请堆的heaphead [heaphead + 0x4],下一个申请堆的heaphead [heaphead + 0x8],文件路径 [heaphead + 0xC],文件行 [hea
阅读全文
摘要:XP SP3 void func1(char* s) { char buf[10]; strcpy(buf, s); } int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { // unsigned char uc[] = // "\x33\xC0
阅读全文
摘要:C --> Assembly --> Shellcode XP SP3 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { //get address // HMODULE hMod = LoadLibrary("user32.dll"); //
阅读全文
摘要:xxxDlg.h public: CTabCtrl m_tabctrl; #define MAX_DLG_PAGE 2 CDialog* m_pDialog[MAX_DLG_PAGE]; int m_iSelectedPage; CPageProcess m_pageProcess; CPageFi
阅读全文
摘要:BOOL CDemoMFCCtrlDlg::OnInitDialog() { //... SetDlgItemText(IDC_EDIT1, _T("Name")); SetDlgItemText(IDC_EDIT2, _T("PassWord")); ((CButton*)GetDlgItem(I
阅读全文
摘要:列名、行内容的添加、删除。 据列名、行内容长度设置列宽。 排序。 提升权限 BOOL CDemoListCtrlApp::EnableDebugPrivilege() { HANDLE token; if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJ
阅读全文