| 坤's profile闲来无事PhotosBlogLists | Help |
|
November 27 Perl 笔记#!/usr/bin/perl -w
use strict; print "hello wold !\n"; my $car = "BMW"; my $age = 27; print "my car is $car\n"; print "my age is",$age*$age,"\n"; print; my @cars =("BMW","QQ","jili");
my @ages =(12,18,27); my @mix = ("BMW",12,1.1234); print $cars[0],"\n";
print $mix[$#mix],"\n"; my $i =0; while($i<@cars) { print $cars[$i],","; $i+=1; } my @sorted = sort @cars;
my @backwards = reverse @ages; my %fruit_color = ("apple","red","banana","yellow"); my %fruit_color1 = (
apple =>"red", banana =>"yellow", ); print $fruit_color{"apple"},"\n";
my @fruits = keys %fruit_color;
my @colors = values %fruit_color; foreach (@fruits) { print $fruit_color{$_},"\n"; } foreach my $key(keys %fruit_color) { print "The value of $key is $fruit_color{$key }","\n"; } November 25 软件注册功能 GBT 中有人编了个东西,迫于最近物价飞涨,生活不易,想拿出去骗点钱花。
但是他们是一群有良知的人,有感于共产主义共享之风太盛,为防止受骗的人太多。想给软件加点保护,
目的
只骗有钱没处花的冤大头。。。
using System;
using System.Collections.Generic; using System.Linq; using System.Text; using System.Management; namespace LoginWindowTest
{ class Reg { /// <summary> /// 获得CPU的序列号 /// </summary> /// <returns></returns> public static string GetCpuID() { try { ManagementClass mc = new ManagementClass("Win32_Processor"); ManagementObjectCollection moc = mc.GetInstances(); string strCpuID = null;
foreach (ManagementObject mo in moc)
{ strCpuID = mo.Properties["ProcessorId"].Value.ToString(); break; } return strCpuID; }
catch { return null; } } /// <summary> /// 取得设备硬盘的卷标号 /// </summary> /// <returns></returns> public static string GetHardDiskID() { try
{ ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"d:\""); disk.Get(); return disk.GetPropertyValue("VolumeSerialNumber").ToString(); } catch
{ return null; } } /// <summary>
/// 加密字符串 /// </summary> /// <param name="md5"></param> /// <returns></returns> public static string GetMd5(string md5) { System.Security.Cryptography.MD5CryptoServiceProvider md = new System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] value, hash; value = Encoding.UTF8.GetBytes(md5); hash = md.ComputeHash(value); md.Clear(); string temp = ""; for (int i = 0; i < hash.Length; i++) { temp += hash[i].ToString("x").PadLeft(2, '0');
} return temp;
} /// <summary>
/// 获得机器码 /// </summary> /// <returns></returns> public static string getMNum() { string strNum = GetCpuID() + GetHardDiskID(); string strMNum = strNum.Substring(0, 24); return strMNum; } public static int[] intCode = new int[127];
public static int[] intNumber = new int[25]; public static char[] Charcode = new char[25]; public static void setIntCode()
{ for (int i = 1; i < intCode.Length; i++) { intCode[i] = i % 9; } } /// <summary>
/// 生成注册码 /// </summary> /// <returns></returns> public static string getRNum() { setIntCode(); string mNum = getMNum(); for (int i = 1; i < Charcode.Length; i++) { Charcode[i] = Convert.ToChar(mNum.Substring(i - 1, 1)); } for (int j = 1; j < intNumber.Length; j++) { intNumber[j] = intCode[Convert.ToInt32(Charcode[j])] + Convert.ToInt32(Charcode[j]); } string strAsciiName = ""; for (int j = 1; j < intNumber.Length; j++) { if (intNumber[j] >= 48 && intNumber[j] <= 57) { strAsciiName += Convert.ToChar(intNumber[j]).ToString(); } else if (intNumber[j] >= 65 && intNumber[j] <= 90) { strAsciiName += Convert.ToChar(intNumber[j]).ToString(); } else if (intNumber[j] >= 97 && intNumber[j] <= 122) { strAsciiName += Convert.ToChar(intNumber[j]).ToString(); } else { if (intNumber[j] > 122) { strAsciiName += Convert.ToChar(intNumber[j] - 10).ToString(); } else { strAsciiName += Convert.ToChar(intNumber[j] - 9).ToString(); } } } return strAsciiName; } } } 给程序加个壳:
using System;
using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using System.IO; namespace LoginWindowTest
{ static class Program { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { string sysFolder = System.Environment.SystemDirectory; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); if (!File.Exists(sysFolder + "\\sixi.ini")) { File.Create(sysFolder + "\\sixi.ini"); MessageBox.Show("请注册!"); Application.Run(new Form2()); }
else { byte[] array = new byte[32]; string str = ""; FileInfo fi = new FileInfo(sysFolder + "\\sixi.ini"); FileStream fs = fi.OpenRead(); int i = fs.Read(array, 0, 32); fs.Close(); str = System.Text.Encoding.ASCII.GetString(array);
if (str == Reg.GetMd5(Reg.getRNum()).Trim()) { MessageBox.Show("软件已经注册!"); Application.Run(new Form1()); }
else { MessageBox.Show("请注册软件!"); Application.Run(new Form2()); }
} } } } 注册窗口:
using System;
using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace LoginWindowTest
{ public partial class Form2 : Form { public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e)
{ string sysFolder = System.Environment.SystemDirectory;
textBox1.Text = Reg.getMNum(); if (string.IsNullOrEmpty(textBox2.Text)) { MessageBox.Show("注册码不能为空,获取注册码,请联系我们!"); } else if (textBox2.Text.Trim() != Reg.getRNum()) { MessageBox.Show("注册码错误!"); }
else { File.WriteAllText(sysFolder + "\\sixi.ini", Reg.GetMd5(textBox2.Text.Trim())); MessageBox.Show("注册成功!"); } } private void button2_Click(object sender, EventArgs e)
{ this.Close(); } } } November 23 南山滑雪November 19 2012November 18 看图说话场景: 女孩子和老男人宋秘书在床上ooxx,此时女孩的男朋友打来电话了。 提问:这是一个AV片还是个伦理片 答:在男主叫说出"我爱你"之前ta是AV片, 说完之后就是伦理片了。
http://club.qingdaonews.com/showAnnounce.php?board_id=2&topic_id=4574108
|
||||
|
|