vb.net生成序列,vbnet代码生成器

VB.net 中如何实现序列号注册功能

思路是:

创新互联建站专注于凤县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供凤县营销型网站建设,凤县网站制作、凤县网页设计、凤县网站官网定制、小程序制作服务,打造凤县网络公司原创品牌,更为您提供凤县网站排名全网营销落地服务。

读取电脑硬件的信息,用随机数加工这些信息后在注册表中做个记录,用这个记录生成注册码送回给你,你按特定的方法生成序列号,你的小程序收到序列号后还原成数据,数据比较注册表中的记录,如果正确就加入第二部分注册的信息完成注册.你的程序每次打开时,先比对硬件信息-第一注册信息-第二注册信息,看这三者是否统一,不统一的就是使用期软件.

也可以省了第一注册信息,直接发硬件信息给你生成序列号,其他的相同.

win7下vb.net 如何获取硬盘序列号

Private Function 硬盘序列号() As String

Try

Dim myInfo As Microsoft.Win32.RegistryKey = My.Computer.Registry.LocalMachine.OpenSubKey("HARDWARE\DEVICEMAP\Scsi\Scsi Port 0\Scsi Bus 1\Target Id 0\Logical Unit Id 0")

硬盘序列号 = Trim(myInfo.GetValue("SerialNumber"))

Catch

Try

Dim myInfo As Microsoft.Win32.RegistryKey = My.Computer.Registry.LocalMachine.OpenSubKey("HARDWARE\DEVICEMAP\Scsi\Scsi Port 1\Scsi Bus 1\Target Id 0\Logical Unit Id 0")

硬盘序列号 = Trim(myInfo.GetValue("SerialNumber"))

Catch

硬盘序列号 = ""

End Try

End Try

End Function

试下,如果返回为空,则表示失败。

在本机win8win8.1有效,不过好像在有些机器上没用。

VB.NET中随机产生十个数字

添加listbox1,label1,command1

Public Class Form1

Dim N(10) As Integer

'生成随机数

Private Sub CreatRand()

Dim I As Integer

Dim Strarr As String

Strarr = ""

ListBox1.Items.Clear()

Dim R As New System.Random

For I = 0 To 9

N(I) = R.Next(30, 100)

ListBox1.Items.Add(Str(N(I)))

Strarr = Strarr Str(N(I)) " "

Next

'添加标签的横向数字序列

Label1.Text = Strarr

End Sub

'获取最大值

Private Function GetMax() As Integer

Dim I As Integer

Dim intMax As Integer

intMax = 0

For I = 0 To 9

intMax = IIf(intMax N(I), intMax, N(I))

Next

Return intMax

End Function

'获取最小值

Private Function GetMin() As Integer

Dim I As Integer

Dim intMin As Integer

intMin = 101

For I = 0 To 9

intMin = IIf(intMin N(I), intMin, N(I))

Next

Return intMin

End Function

'获取平均值

Private Function GetAve() As Single

Dim I As Integer

Dim Sum As Integer

Sum = 0

For I = 0 To 9

Sum = Sum + N(I)

Next

Return Sum / 10

End Function

'生成随机数,显示各种值

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Call CreatRand()

MsgBox("最大值=" Str(GetMax()) ",最小值=" Str(GetMin()) ",平均值=" Str(GetAve()))

End Sub

End Class

《VB.NET》中的“Randomize(x)”和“Rnd(x)”

Rnd[(number)]

number

的值决定了

Rnd

生成随机数的方式

如果

number

的值

Rnd

生成

小于

每次都使用

number

作为随机数种子得到的相同结果。

大于

序列中的下一个随机数。

等于

最近生成的数。

省略

序列中的下一个随机数。

====================

先讨论没有加randomize时

X小于0

rnd(-1)

以-1为种的随机数永远相同

X大于0

rnd(1)

系统会先生成随机数列表

有N个随机数

你每执行一次rnd(1)就获取列表中下一个随机数

比如有这么个列表

程序开始时

得到0.7055475

执行第二次rnd(1)得到0.533424

第三次0.5795186

你关闭程序重新打开

第一次得到还是0.7055475

.7055475

.533424

.5795186

.2895625

.301948

而你说的X0

X0没差别

是错的

Print

Rnd(1)

Debug.Print

Rnd(-2)

Debug.Print

Rnd(-2)

Print

Rnd(1)

结果是不一样的

X等于0

最近生成的数

一般为科学型数值

这个值也是不变的

rnd(x)

省略x不写

就和X0

效果一样

=========================

Randomize

number

Rnd

函数的随机数生成器初始化,该随机数生成器给

number

一个新的种子值。如果省略

number,则用系统计时器返回的值作为新的种子值。

如果没有使用

Randomize,则(无参数的)Rnd

函数使用第一次调用

Rnd

函数的种子值。

注意

若想得到重复的随机数序列,在使用具有数值参数的

Randomize

之前直接调用具有负参数值的

Rnd。使用具有同样

number

值的

Randomize

是不会得到重复的随机数序列的。

一般在使用rnd获取随机数

都是

randomize

int(rnd*(上限-下限+1)+下限)

这2个函数的X都是省略不写

用VB.net编写反向碱基序列

Private Sub Form_Load()

Dim A As String

Dim B As String

A = InputBox("请输入碱基序列:", "输入!")

A = UCase(A) '变成大写

Rem 碱基互补配对

A = Replace(A, "C", "1")

A = Replace(A, "T", "2")

A = Replace(A, "G", "3")

A = Replace(A, "A", "4")

A = Replace(A, "1", "G")

A = Replace(A, "2", "A")

A = Replace(A, "3", "C")

A = Replace(A, "4", "T")

Rem 反向

For i = Len(A) - 1 To 1 Step -1

B = B Mid(A, i, 1)

VB.NET中为什么RND()前必须初始化RANDOMIZE

Randomize()的作用是初始化随机数种子,

它有个带参数的版本

Randomize(double seed)

seed是产生随机数序列的一个标号,如果你不调用Randomize改变这个标号,默认使用的是同一个序列,所以每次你启动程序生成的随机数都是相同的,不带参数的Randomize等价于Randomize(Timer),也就是使用系统时钟作为随机数种子

因为这个值随程序启动或调用每次都不会相同,所以能实现产生不同的随机数


分享名称:vb.net生成序列,vbnet代码生成器
标题链接:http://cdiso.cn/article/hcciph.html

其他资讯