vb.net 如何更安全的给自己写的软件加注册码限制分发
注册码很好做啊 利用现在成熟的加密解密技术 很不容易破解的 但现在的.net时代 问题的关键不在这里 而是在如何加密自己的软件不让反编译 看看现在的.net软件 就算使用了乱码器 都好容易被反编译出来 只要被反编译 就会删掉你程序的注册功能部分 然后再重新编译 就可以无需注册正常使用了 根本就不用去破解你那深奥的注册码!
创新互联公司总部坐落于成都市区,致力网站建设服务有成都网站设计、成都做网站、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序定制开发、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!
VB.NET和VB6.0有哪些区别?
VB.net是纯面向对象的开发语言,为了适应.net Framework的安全性,vb.net进行了不小的调整。但是关键字修饰符之类的基本没有什么变化,所以您只需要习惯.net下的强类型,应该是不难转型。
举个简单的例子吧,vb.net下是没有“变体类型”这一数据类型的,整型就是整型,字符串就是字符串,像
a = 50 + 60
Text1.Text = a
这样的代码是不行的,VB6.0支持变体类型,会自动进行类型转换,而.net下为了保证安全性,会要求程序员自己进行必要的转换。
至于API,.net框架下对API的依赖性像VB6中那么高,一些API完成的工作可以由一些类库来完成。API的调用也不是一样的,因为有些API涉及到了“不安全代码”,而且API是用另一种非.net 语言编写的,所以调用时有些特别的要求。
vb.net工作在.NET Framework下,与VB6的解释执行不同,VB.NET是编译执行的,.net下所有的应用程序都被编译成一种“中间语言(MSIL)”的形式,运行时由一种称为即时编译器(JIT)的程序进行二次编译。可以说.net既是开发环境又是运行环境,它提供了通用类型系统(CTS)和“公共语言运行时”(Common Language Runtime,CLR),前者为开发时提供了类型支持,.net下语言中的基本数据类型都来自于这个类型系统;后者为.net应用程序提供了运行环境,包括JIT、GC(内存垃圾收集器)等等,同时负责代码的运行时安全。
最后,我感觉学一门语言并不难,难的是理解一些系统和程序设计中低层的东西,不过,我比较建议您学习VB.NET,因为它的纯面向对象的特性比较符合目前的软件开发方式。
希望这些信息对您有帮助。
VB.net如何提取system并修改文件安全属性?
将以下代码保存到模块中:
Declare Function GetPrivateProfileString Lib "kernel32" Alias _
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, _
ByVal lpDefault As String, _
ByVal lpReturnedString As String, _
ByVal nSize As Long, _
ByVal lpFileName As String) As Long
Declare Function WritePrivateProfileStringByKeyName Lib "kernel32" Alias _
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, _
ByVal lpKeyName As String, _
ByVal lpString As String, _
Public Function GetIniParam(NomFichier As String, NomSection As String, NomVariable As String) As String
Dim ReadString As String * 255
Dim returnv As String
Dim mResultLen As Integer
mResultLen = GetPrivateProfileString(NomSection, NomVariable, "(Unassigned)", ReadString, Len(ReadString) - 1, NomFichier)
If IsNull(ReadString) Or Left$(ReadString, 12) = "(Unassigned)" Then
Dim Tempvalue As Variant
Dim Message As String
Message = "配置文件 " NomFichier " 不存在."
returnv = ""
Else
returnv = Left$(ReadString, InStr(ReadString, Chr$(0)) - 1)
End If
GetIniParam = returnv
End Function
Public Function WriteWinIniParam(NomDuIni As String, sLaSection As String, sNouvelleCle As String, sNouvelleValeur As String)
Dim iSucccess As Integer
iSucccess = WritePrivateProfileStringByKeyName(sLaSection, sNouvelleCle, sNouvelleValeur, NomDuIni)
If iSucccess = 0 Then
WriteWinIniParam = False
Else
WriteWinIniParam = True
End If
End Function
调用方法:
Call WriteWinIniParam(App.Path "\LiveUpdate.ini", "LiveUpdate", "AppName", txtAppName.Text)
txtFile.Text = GetIniParam(App.Path "\LiveUpdate.ini", "LiveUpdate", "FILES1")
VB.net中怎么通过代码对textbox中的font下的各个属性进行修改?
通过下面的方法进行修改:
TextBox1.Font = New Font("Arial", 16, FontStyle.Bold) 'Arial字体,大小:16,粗体
'TextBox1.Font = New Font("Arial", 16, FontStyle.Italic) 'Arial字体,大小:16,斜体
'TextBox1.Font = New Font("Arial", 16, FontStyle.Regular) 'Arial字体,大小:16,正常
'TextBox1.Font = New Font("Arial", 16, FontStyle.Strikeout) 'Arial字体,大小:16,删除线
'TextBox1.Font = New Font("Arial", 16, FontStyle.Underline) 'Arial字体,大小:16,下划线
TextBox1.ForeColor = Color.Red '前景色
VB.NET的简介
VB.net是微软最新平台技术,是.netframeworkSDK的一种语言。VB.net和VC#.net在功能上没有区别。编译以后生成的可执行文件被称为Assembly,即程序集。
VB.net的版本号是VisualBasic7.0,它的运行是建立在CLR(CommonLanguageRuntime)和MSIL(MicrosoftIntermediateLanguage)虚拟器上的。其实,它的机制和Java差不多。
VB.NET的特点
1.真正成为面向对象以及支持继承性的语言。
2.窗体设计器支持可视化继承,并且包含了许多新的特性,比如自动改变窗体大小、资源本地化支持、数据类工具内在支持XML数据。
3.直接建立在.NET的框架结构上,因此开发人员可以充分利用所有.NET平台特性,也可以与其他的.NET语言交互。
4.为Windows应用程序提供了XCOPY部署,开发者不再需要为DLL的版本问题担忧。
VB.net的语言特点:
1.代码托管。被托管的代码享受.netframework提供的安全保障和垃圾回收机制,但是这也同时表明,你的程序被框在Framework里面了。API变得不太方便。
2.强大的面向对象特性。现在VB7已经是一个完全的面向对象程序。
现在VB7已经支持类的各种特性:继承,函数的覆盖,重载,虚拟,隐藏??
3.功能强大,程序界面更标准。
4.程序代码结构化更强,开发环境舒适体贴。
VB.net 和C#.net 各有什么优缺点
C#.net优点:
运算符重载。不安全代码(指针和固定内存区)、 无符号整数、移位运算。
VB的优点:
即时编译、静态事件绑定、条件异常捕获、COM兼容类、宽松的类型检查和变量声明、VisualBasicRuntime库、可选参数、带参数属性、模块等语言特征、动态数组。
通过VB.NET开发好的程序绝对没有问题(包括DirectX游戏开发)。虽然VB.NET的资料少,但是只要C#支持的VB.NET都支持(大体上这样,因为都要经过MSIL中间环节。除了指针之类的VB.NET不支持C#支持,但是没有多大实际用处)。
vb.net的资料以英文资料居多(只有英文资料才有看头,中国的没有什么好资料),得看看英文水平过不过关。还有VB.NET的ide也比C#的IDE好得多,代码看得也舒服。(C#的大括号{}太烦人)。
至于VB6对C的帮助,只是理解上会容易一些,其它用处不大。有VB6的基础学VBNET会方便一些,但是并不是会VB6就会VB.NET,它们差别也不小。
扩展资料:
NET、C#和ASP.NET之间的区别:
1、NET是一个平台,一个抽象的平台的概念。
NET平台其本身实现的方式其实还是库,抽象层面上来看是一个平台。
基本可以理解的NET核心就是NETFramwork。
NETFramework包括两个关键组成元素:
a.CommonLanguageRuntime,公共语言运行时(CLR0)-提供内在管理,代码安全性检测等功能。
b.NETFrameworkClassLibrary,.NET框架类库(FLC)-提供大量应用类库,提高开发效率。
学习NETFramework是所有.NET开发人员都必须的,否则开发NET程序永远都是停留在‘外功’的招式,NETramework是NET开发高手的‘内功’修行之一。
2、C#是一个程序设计语言,仅仅是一个语言。
程序设计语言仅仅是为了方便开发人员和计算机沟通的工具,虽然C#语法相对C和 C+要多一些,但是相对来看C#语法都比较固定,这样使用起来却都很容易。我认可一位朋友说的,C#的语法更严谨!
这里回过来看看NET和C#的关系,不得不提的是NET程序的执行过程。
C#符合NETCLR中的公共语言运行规范。CLS:commonlanguagespecification,当然所有的NETLanguage都是符合这个规范的例如:VB.NET、XAML和C++/CL等等。
C#需要符合NETCLS,是因为NETCLR和JAVA虚拟机类似,有一个中间语言共机器来执行。所有不同语言的.NET代码在执行前会被编译成同样的中间语言(MSIL),所以所有NET支持语言都必须符合符合CLS规范。
P.S:如果做.NET3.0XAML开发的朋友,可以尝试下ildasm.exe看看XAML的应用程序,会发现原来XAML其实很简单。
3、ASP.NET是一个网站开发的技术,仅仅是.NET框架中的一个应用模型。
用微软公司ASP.NET快速入门中的一句话来解释,ASP.NET是用于生成基于Web的应用程序的内容丰富的编程框架。
ASP.net和C#的区别:
编写asp.net通常包括两部分的代码:网页层和后台处理层,网页就是用标记语言来写的,而网页对应的后台处理程序则需要.net语言来完成,目前主要是采用c#和vb.net。
可以说整个的asp.net网站通过c#或者vb.net来实现。而c#则是ms.netframework的主要语言,可以用在网站,桌面应用等方面。可以算是一种比较流行的编程语言。
VB.NET 的winform程序数据库安全问题
VB.NET的程序很容易反编译的,所以写到类中好像并不安全
建议
1.用户登录所使用的账户的权限一定要控制好
2.可以把连接字符串硬编码到exe或者dll中,然后用.NET的混淆软件加密混淆(一定要选择加密字符串)
3.使用其他的技术使用户间接操作数据库。可以在服务器远程建立一个服务器(接受Sockets连接),或者建立一个动态网页。让用户连接到这些客户端,发送一些指令,对数据库的查操作由这个服务器上的程序代它完成,然后把结果给用户
标题名称:vb.net代码安全 vbs 安全
本文路径:http://scgulin.cn/article/hjpjcd.html