最近拜人所託,把乙個無比簡單的程式record-playback.exe加乙個包裝,實現程式註冊功能。
實現思路:獲取本地網絡卡mac位址,並對其進行加密生成初始碼。由使用者提供初始碼,通過相應規則再次加密生成加密串為註冊碼。在註冊程式中註冊校驗時,如果校驗通過則將加密串儲存在本地生成的檔案中。下次登陸的時候首先讀取並校驗本地檔案中的加密串,如果校驗通過則直接執行程式,如果校驗不通過則開啟註冊程式。
程式介面:
實現**:
using system;
using system.windows.forms;
using system.management;
using system.web.security;
using system.web;
using system.security.cryptography;
using system.runtime.interopservices;
using system.linq;
using system.text;
using system.collections.generic;
using system.io;
/*pocksoft註冊是通過獲取本地網絡卡實體地址(mac),進行md5加密後擷取前15位獲得初始碼並置於「第一步」的位置。通
過第一步生成的 初始碼+shy 再進行一次md5加密,得到註冊碼。在註冊成功後則會在本地生成相應的配置檔案,後續登陸
則不再要求註冊。
*/namespace packsoft
[dllimport("kernel32")] //呼叫動態庫
public static extern int winexec(string exename, int opertype); //定義執行類
public static string runexe() //執行檔案
public static string getmacstring() //獲取mac位址
}mo.dispose();
return null;
}public static string read(string path) //在path路徑下面讀取配置檔案內容
//關閉流
sr.close(); //記得一定要關閉,否則配置檔案會處於占用狀態
}return read;
}public void write(string path, string str) //在path路徑下面檔案寫入輸入str
else
}public static string userinfo = new string[4];
public static string md5encrypt(string strtext) //md5演算法加密 sha1 //
private void packsoft_load(object sender, eventargs e) //視窗初始化
}private void button2_click(object sender, eventargs e)
private void button1_click(object sender, eventargs e)
else}}
}安裝檔案:
生成安裝檔案時將record-playback.exe檔案設定為隱藏,不然前面做的都白費力氣了。
對拍程式c
對拍就是你給兩個程式和乙個隨機資料生成器,然後系統用隨機資料生成器的輸出資料作為你這兩個程式的輸入,比較這兩個程式的輸出,找到這兩個程式輸出不一樣的一組資料。data.exe是資料生成程式 test.exe是你需要檢查的程式 ac.exe是正確的程式 這三個程式需要放在同一目錄下,執行以下對拍程式即...
c 程式對怕
以某個題為例 description 給出乙個序列,包含n個數,有正數 0及負數。現取連續的一段數,問它們和的絕對值的最小 最大值分別為多少?input 第一行乙個數n,表示序列長度。1 n 1e5 第二行包含n個整數,a 1 a 2 a n 1e7 a i 1e7 output 一行包含兩個數 最...
Release 對程式的優化 C
c 程式執行有debug模式和release模式 一般用於程式除錯,對 不會有任何的優化,還會加入很多檢測的節點,執行效率很低,速度慢 用於程式發布版本的執行方式,會對程式進行深度 徹底的優化,執行效率高,速度快 變數 定義的變數,比如 int a 1 不管中間進行多麼複雜的運算 變化,只要最後沒有...