Time of Update: 2018-12-03
主程式調用外部程式的4種方法介紹:1. 啟動外部程式,不等待其退出。 2. 啟動外部程式,等待其退出。 3. 啟動外部程式,無限等待其退出。 4. 啟動外部程式,通過事件監視其退出。using System.Diagnostics.Process.Start()private string appName = “”; //應用程式路徑或名稱/// <summary>/// 1. 啟動外部程式,不等待其退出///
Time of Update: 2018-12-03
瀏覽看雪論壇,發現有人講了一個有趣的C語言程式。原帖地址:http://bbs.pediy.com/showthread.php?p=389887我做了一點點的修改,最後列印出 i O y(中間那個是個心的形狀,運行程式就知道了)#include <stdio.h>int main(){ const short int c1 = 49920; const int c2 = 1073742008; int (*pf)() = (int (*)())&c2;
Time of Update: 2018-12-03
在開發軟體監控危害我們偉大祖國安全的間諜分子的時候,經常需要監控鍵盤記錄,擷取相關資訊。我們在開發軟體的時候為了避免客戶的資訊泄露,也需要監控鍵盤記錄,所以我們來親自實踐一下監控鍵盤記錄。首先請見我們主程式裡面調用並載入鍵盤監控DLL,並載入在系統中。#include "ktr.h"int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int
Time of Update: 2018-12-03
公司的一個項目快完成了,最後要加上註冊驗證,翻了n多資料,終於做出來了。現在把體驗說一下,以後要用的時候也好找。~~.Net內建的類庫裡面有個演算法。 這個演算法的原理是不對稱式加密的原理。不對稱式加密原理大家基本上都瞭解。加密的密碼(密鑰)分為兩個部分,公開金鑰和私密金鑰。通過私密金鑰加密的密文只能通過公開金鑰解密。根據這個特性,我們可以發現只要開發人員儲存好私密金鑰,即使演算法代碼被用戶端破解,因用戶端不知道儲存在開發人員處的私密金鑰,也無法產生註冊碼。 以下是代碼:using
Time of Update: 2018-12-03
在用電腦的一些智能演算法(GA,PSO,ANN etc.)模擬時經常需要隨機產生初始種群(初始樣本),看看<stdlib.h>中的這兩個函數的偽隨機數產生吧~~~1. 產生[a,b]之間的一個實數和一個整數[cpp] view plaincopy/* 定義函數 int rand(void); 函數說明 rand()會返回一隨機數值,範圍在0至RAND_MAX 間。 在調用此函數產生隨機數前,必須先利用srand()設好隨機數種子,如果未設隨機數種子,rand(
Time of Update: 2018-12-03
首先看這樣一個程式int a, b;a = a + b;b = a - b; 此時b = (a + b) - b = a; (經過第一步a為a+b)a = a - b; 此時a = (a + b) - a = b; (經過第二步時b已為a)可見這個程式實現了a和b的交換。注意+和-互為逆運算,可以得到(a+b)-b=a,埋個伏筆先。在看這個例子:int a, b;a = a ^ b;b = a ^ b;a = a
Time of Update: 2018-12-03
以下列舉出一部分,歡迎補充。圖書資訊大部分出自豆瓣。以書均有電子版下載連結,本人法盲,如有侵權問題請告知,我將刪除所有連結和電子資源。還請大家買紙質版書籍,尊重著作權。《c程式設計語言》在電腦發展的曆史上,沒有哪一種程式設計語言像C語言這樣應用廣泛。本書原著即為C語言的設計者之一Dennis M.Ritchie和著名電腦科學家Brian
Time of Update: 2018-12-03
原文連結:http://blog.csdn.net/jing0611/article/details/40302371.記憶體配置方式記憶體配置方式有三種:[1]從靜態儲存地區分配。記憶體在程式編譯的時候就已經分配好,這塊記憶體在程式的整個運行期間都存在。例如全域變數,static變數。[2]在棧上建立。在執行函數時,函數內局部變數的儲存單元都可以在棧上建立,函數執行結束時這些儲存單元自動被釋放。棧記憶體配置運算內建於處理器的指令集中,效率很高,但是分配的記憶體容量有限。[3]從堆上分配,亦稱
Time of Update: 2018-12-03
using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Drawing;using System.Web;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using System.
Time of Update: 2018-12-03
C++STL的非變易演算法(Non-mutating algorithms)是一組不破壞操作資料的模板函數,用來對序列資料進行逐個處理、元素尋找、子序列搜尋、統計和匹配。 search演算法函數在一個序列中搜尋與另一序列匹配的子序列。它有如下兩個原型,在迭代器區間[first1, last1)上找迭代器區間[first2, last2)完全符合(或者滿足二元謂詞binary_pred)子序列,返回子序列的首個元素在[first1,
Time of Update: 2018-12-03
/*--此段代碼通用,修改後可以完成一般設定鍵盤的動作響應--flystone 2006-02--轉載保留此資訊*/#define SCANKEY_T 40 #define DELAY_T 6 #define TRUE 1#define FALSE 0#define KEY_ADD 0x0e //(00001110)#define KEY_ENTER 0x0b //(00001011)#define
Time of Update: 2018-12-03
在Windows環境下,實現處理序間通訊的方式有很多種,如通訊端、管道、遠端程序呼叫和NETBIOS等,郵槽是其中實現單通道處理序間通訊的一種。建立郵槽的進程被稱為郵槽伺服器,而其它發送訊息給郵槽的進程被稱為郵槽用戶端。郵槽用戶端能發送訊息給原生郵槽,也可發送訊息給區域網路內其他電腦內的郵槽,所有這些訊息都儲存在郵槽內,直到郵槽伺服器讀取它。這些訊息通常是以廣播的方式發送,建立在面向無連結的資料報的基礎上,因此線上路不好時傳輸品質不可靠。 這種處理序間通訊的方式比較適用於在區域網路環境內傳送
Time of Update: 2018-12-03
3389連接埠是Windows 2000(2003) Server 遠端桌面的服務連接埠,可以通過這個連接埠,用"遠端桌面"等串連工具來串連到遠端伺服器,如果串連上了,輸入系統管理員的使用者名稱和密碼後,將變得可以像操作本機一樣操作遠端電腦,因此遠程伺服器一般都將這個連接埠修改數值或者關閉。3389連接埠的關閉: 首先說明3389連接埠是windows的遠端管理終端所開的連接埠,它並不是一個木馬程式,請先確定該服務是否是你自己開放的。如果不是必須的,建議關閉該服務。 win2000
Time of Update: 2018-12-03
管道是一種用於在進程間共用資料的機制,其實質是一段共用記憶體。Windows系統為這段共用的記憶體設計採用資料流I/0的方式來訪問。由一個進程讀、另一個進程寫,類似於一個管道兩端,因此這種進程間的通訊方式稱作“管道”。 管道分為匿名管道和具名管道。 匿名管道只能在父子進程間進行通訊,不能在網路間通訊,而且資料轉送是單向的,只能一端寫,另一端讀。 命令管道可以在任意處理序間通訊,通訊是雙向的,任意一端都可讀可寫,但是在同一時間只能有一端讀、一端寫。 管道用戶端代碼實現如下/*
Time of Update: 2018-12-03
我們進行Windows安全編程的時候,經常需要檢測進程,我們來實踐一下枚舉進程與進程載入模組。請見代碼實現與注釋分析。 /* 標頭檔 */#include <Windows.h>#include <Psapi.h>#include <Tlhelp32.h>#include <stdio.h>/* 預先處理聲明 */#pragma comment (lib, "psapi.lib")/* 函式宣告 */VOID WINAPI
Time of Update: 2018-12-03
Windows Logon Process,Windows NT 使用者登陸程式,系統管理使用者登入和退出。該進程的正常路徑應是 C:\Windows\System32 且是以 SYSTEM
Time of Update: 2018-12-03
微軟公布了Windows8開發人員預覽版,http://msdn.microsoft.com/en-us/windows/home?ocid=ban-f-cn-dca-Sep-Win8Build 大家可以在虛擬機器上安裝。比如 virtual Box4.12.安裝完成以後效果如下建立第一個Windows8應用程式,Visual Studio
Time of Update: 2018-12-03
檔案關聯就是將一種類型的檔案與一個可以開啟它的程式建立起一種依存關係。舉個例子來說,位元影像檔案(BMP檔案)在Windows中的預設關聯程式是“畫圖”,如果將其預設關聯改為用ACDSee程式來開啟,那麼ACDSee就成了它的預設關聯程式。 一個檔案可以與多個應用程式發生關聯。我們可以利用檔案的“開啟檔案”進行關聯選擇。我們也可以刪除因誤操作而引起的錯誤檔案關聯,可以根據需要建立檔案關聯,在有些軟體中還可以恢複檔案的關聯。 檔案關聯也是很多流行病毒、木馬經常利用的隱藏和自動運行手段。
Time of Update: 2018-12-03
WinIO程式庫允許在32位的Windows應用程式中直接對I/O連接埠和實體記憶體進行存取操作。通過使用一種核心模式的裝置磁碟機和其它幾種底層編程技巧,它繞過了Windows系統的保護機制。 WinNT/2000/XP下,WinIO函數庫只允許被具有管理者許可權的應用程式調用。如果使用者不是以管理者的身份進入的,則WinIO.DLL不能夠被安裝,也不能啟用WinIO磁碟機。通過在管理者許可權下安裝磁碟機軟體就可以克服這種限制。然而,在這種情況下,ShutdownWinIo函數不能在應用程式結
Time of Update: 2018-12-03
手動和自動同時訪問全域變數時,就有可能出現線程不同步的問題。以下主要利用lock線程鎖來修改解決方案,使線程同步,詳細代碼如下。 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using