using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Microsoft.Win32; namespace WindowsApplication1 { public partial class 注册表修改 : Form { public 注册表修改() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { RegistryKey swr = Registry.LocalMachine.CreateSubKey("SOFTWARE");//注册表中的这个SOFTWARE注册文件 RegistryKey r = swr.CreateSubKey("注册表操作练习");//在SOFTWARE这个文件下打开或传建注册表操作练习 r.SetValue("路径", Application.StartupPath, RegistryValueKind.String);//在注册注册表操作练习中写入传建”路径“放入值,值类型是字符串 } }
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
namespace WindowsApplication1
{
public partial class 注册表修改 : Form
{
public 注册表修改()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
RegistryKey swr = Registry.LocalMachine.CreateSubKey("SOFTWARE");//注册表中的这个SOFTWARE注册文件
RegistryKey r = swr.CreateSubKey("注册表操作练习");//在SOFTWARE这个文件下打开或传建注册表操作练习
r.SetValue("路径", Application.StartupPath, RegistryValueKind.String);//在注册注册表操作练习中写入传建”路径“放入值,值类型是字符串
}
}
我的授权码生成是用CPU序列号通过简单算法生成并保存在XML文件里,请问如果是这样,怎么操作呢?
是C/S结构。谢谢
思路是没次登录都去读取xml的值
看又没有值或是值与CPU序列号是否相同关键就是xml读写
xml操作http://www.cnblogs.com/surfsky/archive/2007/03/13/673625.html
再问下,怎么做到没有登陆就去直接读取XML的值呢?
可不可以在输入授权码的窗体设置一个变量或是什么标记,如果曾经输入过正确的授权码就给个标记,然后以后启动系统就判断这个标记?不知道可行不?
请指导。
再问下,怎么做到没有登陆就去直接读取XML的值呢?
在登陆窗体前有个比登陆还先出来的窗体没,有的话可以在这个窗体里设置。没有就写在登陆窗体的Load事件中处理也
是可以的可不可以在输入授权码的窗体设置一个变量或是什么标记,如果曾经输入过正确的授权码就给个标记,然后以后启动系统就判断这个标记?不知道可行不…
这样设置个变量每次启动程序变量就变成初始值了无意义,还是得读写XMl通够XML中的值来判断是否可以让他登录
这样可以防止程序拷贝
非常感谢。再问:按照您这样说,每次启动都得在LOAD事件去判断是否经过授权,似乎感觉麻烦一些,而且当用户输入合法的一个授权码之后,下次再登陆是否也需要用户再输入授权码?如果是,那样感觉很麻烦。
下次启动时读取xml中的授权码 有就不用在输入了。