分享好友 最新动态首页 最新动态分类 切换频道
VS.NET学习之道
2024-12-26 08:26
首先浏览各 VB 网站有关文章,发现用 WebBrowser 控件能实现tuenhai所要求的功能。

VS.NET学习之道

  其次,大量搜集 WebBrowser 控件相关文章和代码。
  用 Google 搜寻。如用 ”WebBrowser” 为关键词搜索,共有 7 , 260 , 000 项查询结果 。
CSDN 论坛 搜索。导航到
CSDN 文档 搜索,导航到
  在实际编程中遇到困难,还可以到 CSDN 论坛 提问,寻求帮助。tuenhai就曾在 CSDN 论坛 问了不下十个有关 WebBrowser 有关问题,并都得到了解答。

  由于善于运用以上三步, 1 个半月时间,tuenhai的软件基本出炉, VB 编程也已基本入门。

  在学习 VB6 的同时自然接触到 Microsoft Visual Studio .NET (简称 VS.NET )。在十年之前, Visual Basic 1.0 成为数以百万计的开发人员的革命性的应用程序开发语言。现在, Visual Studio .NET 为未来的十年做好了准备(有点象为 Microsoft 打广告,你说呢, VS.NE 是用于创建下一代应用程序的理想而又现实的开发工具,是一个从一开始就是为 XML Web 服务创建的开发环境。通过允许应用程序通过 Internet 沟通和共享数据, XML Web 服务使业务能够从 Internet 转换为用于集成和传送它们的核心商业价值的真正平台。 Visual Studio .NET 和 XML Web 服务提供简单、灵活、基于标准的模型,允许开发人员从新的和现有的代码汇编应用程序,而与平台、编程语言或对象模型无关。
VS.NET 2003 中主要有包含以下几种开发工具
Visual Basic .NET 2003
Visual C# .NET 2003
Visual C++ .NET 2003
Visual J# .NET 2003

  有人说,“学习要面向未来 ”,2003年12月,tuenhai的主要开发工具从 VB6 转为 VB.NET , 2004年1月1日 ,tuenhai把新开发的软件从 VB6 升级为 VB.NET ,并正式命名为“论坛发帖软件工具下载版”(又叫“论坛自动发贴软件”,“论坛自动发帖器”,“论坛批量发帖软件”,“论坛自动发贴工具”,“论坛快速发帖器”,“论坛发贴机”,“论坛快速发帖器”) ( 如果你要在网上推广你的产品,记得来找tuenhai ) 。

  在转向 VB.NET 的时候,tuenhai考虑
  第一. VS.NET 的本质是什么
VS.NET 是从一开始就是为 XML Web 服务创建的开发环境。通过允许应用程序通过 Internet 沟通和共享数据, XML Web 服务使业务能够从 Internet 转换为用于集成和传送它们的核心商业价值的真正平台。
  学习要面向未来,就要学习最新的技术,现在的学习为将来的应用作铺垫。tuenhai的软件要突出两点,一是基于 Internet 的应用,二是要应用 XML 技术。这样,tuenhai就可以在应用中尽快掌握新技术,否则,只是为学习而学习,无疑会是比较枯燥,也容易遗忘。
  第二.原来用 VB6 写的”论坛发帖软件工具下载版”,主要用到 WebBrowser 控件,网页加载速度慢,会下载图片, Flash 等许多不需要的东西,在 VS.NET 中可考虑用其他方法实现同样功能。
  在 CSDN 诸位朋友的帮助下,并参考许多资料,tuenhai的“论坛自动发贴机”已基本具备 .NET 特征。代码举例

1. “论坛自动发贴机器”应用了 XML 技术
VB6 中, INI 文件通常用来保存系统信息、配置信息,读写 INI 文件要用到 API 函数,使用起来不是很方便。在 VS.NET 中,已经没有必要用 INI 文件来保存和读取一些信息了,可以改用 VS.NET 中的读写 XML 文件的类。而且,在 VS.NET 2003 的后续版本中,处理 XML 有关功能将得到进一步增强。
  读取 XML 到 DataGrid 代码

Public MyXMLDataSet As New DataSet(“XMLDataSet”)
’ DataSet 是数据的一种内存驻留表示形式,无论它包含的数据 ’ 来自什么数据源,它都会提供一致的关系编程模型。
MyXMLDataSet.ReadXml(“regid.xml”) ’ 读入 XML 文件
form1.DefInstance.DataGrid1.DataSource = MyXMLDataSet ’DefInstance 是 form1 的共享属性
strName = MyXMLDataSet.Tables(0).Rows(0).Item(“name”).ToString ’    从 DataGrid 中读取用户名信息。

  从 DataGrid 更新信息到 XML 文件代码

Dim MyXmlDataSet As DataSet
MyXmlDataSet = CType(DataGrid1.DataSource , DataSet) ’ 类型转换
MyXmlDataSet.WriteXml(“regid.xml”) ’ 把信息写入 XML 文件


如果不用 DataGrid 控件,读写 XML 文件中特定信息可以更简单

Dim xmlInfo As New XmlDocument
xmlInfo.Load(“info.xml”) ’ 载入 XML 文件
Dim str As string=xmlInfo.Item(“RegInfo”).Item(“name”).InnerText ’ 用 ”Item” 可以逐级往下读数据
xmlInfo.Item(“RegInfo”).Item(“pass”).InnerText=“MyPass”
xmlInfo.Save(“info.xml”) ’ 保存信息到 xml 文件


  tuenhai原来打算用 INI 格式来保存“论坛自动发帖机”的注册信息和发言信息,但是,一则读写 INI 不是很方便,二则 XML 在软件开发中越趋重要,于是一开始就用 XML 文件来保存有关信息。在刚接触 VS.NET 时本不知 XML 为何物,现在可自如在“论坛发贴软件工具”读写 XML ,是否有点 ” 高手 ” 的感觉呢(陶醉一下先

2. 用 HttpWebResponse 相关类 GET 和 POST 信息
   用 GET 方式读取网页源代码

Dim httpReq As System.Net.HttpWebRequest ’HttpWebRequest 类对 WebRequest 中定义的属性和方法提供支持,也对使用户能够直接与使用 HTTP 的服务器交互的附加属性和方法提供支持。
Dim httpResp As System.Net.HttpWebResponse
Dim url as String=“
Dim httpURL As New System.Uri(url)   
httpReq = CType(WebRequest.Create(httpURL) , HttpWebRequest)
httpReq.Method = “GET”
httpResp = CType(httpReq.GetResponse() , HttpWebResponse)
Dim reader As StreamReader = _
New StreamReader(httpResp.GetResponseStream , System.Text.Encoding.GetEncoding(“GB2312”)) ’ 如是中文,要设置编码格式为 ”GB 2312” 。
Dim respHTML As String = reader.ReadToEnd() ’respHTML 就是网页源代码
httpResp.Close()


向服务器 POST 信息

Dim httpUrl2 As New System.Uri(“
Dim req As HttpWebRequest
req = CType(WebRequest.Create(httpUrl2) , HttpWebRequest)
req.Method = “POST”
req.ContentType = “application/x-www-form-urlencoded”
Dim bytesData() As Byte = System.Text.Encoding.ASCII.GetBytes(“name=1&pass= 6” )
req.ContentLength = bytesData.Length
Dim postStream As Stream = req.GetRequestStream()
postStream.Write(bytesData , 0 , bytesData.Length) ’ 以上为向网络服务器 POST 信息

Dim res As HttpWebResponse = CType(req.GetResponse() , HttpWebResponse)
Dim reader As StreamReader = _
New StreamReader(res.GetResponseStream , System.Text.Encoding.GetEncoding(“GB2312”))
Dim respHTML As String = reader.ReadToEnd() ’respHTML 为 POST 后网络服务器返回的信息
MsgBox(respHTML) ’ 可用 MsgBox 查看返回的信息
res.Close()




3. 用正则表达式从网页源代码中提取网址
   得到网页源代后,我们可以对源代码进行处理,比如提取其中的链接, Email 地址,图片地址, Flash 等等,这在论坛自动发贴软件工具中很有用。

Dim r As System.Text.RegularExpressions.Regex
Dim m As System.Text.RegularExpressions.MatchCollection
Dim respHtml As String = “http://www.NETsh.Net/subdomains/f_s_o.php?leibie=shangmao” ’ 以这个地址举例
strRegex = “http://([/w]+/.)+[/w]+(/[/w.?]+)+leibie[=]{1}[/w]+” ’ 用这个正则表达式可以提取上面地址。通用 ’ 的提取链接正则表达式为 ”http://([/w-]+/.)+[/w-]+(/[/w- https://blog.csdn.net/yanyuhongchen/article/details/?%&=]*)?” 。  
r = New System.Text.RegularExpressions.Regex(strRegex , System.Text.RegularExpressions.RegexOptions.IgnoreCase)
m = r.Matches(respHTML)
Dim i As Integer
For i = 0 To m.Count - 1
MsgBox(m(i).Value)
Next i


.掌握并利用大量网络资源来辅助 VS.NET 的学习,你将事半功倍。

现在tuenhai的“论坛自动发贴器下载版”已经用 .NET 全面改写,并用上继承,重载,多线程等,所有这些在 VB6 中能否实现,从 VB6 转到 .NET 是否明智

  从 2003 年 10 月开始学习 VB6 编程, 11 月半用 VB6 完成第 1 个软件——“自动发帖工具下载版”,到 2004 年 1 月 17 日 用 VB.NET 技术改写“论坛发贴工具下载版”。可算基本入门。原来没有一点编程基础,全部用的业余时间,没有当面请教一个老师。如果学得还算顺利的话,很大部分要归功于掌握并利用大量网络资源。下面列出tuenhai所掌握的 VS.NET 网络学习资源,有什么遗漏希望大家能指出。
1.  微软技术支持
  在你学习 VS.NET 的过程中,有疑问首先要向 Microsoft 求助。如果你不懂得利用 Microsoft 提供的庞大的学习资源,tuenhai要告诉你,你舍近求远了。
  ( 1 )首先,你要安装 MSDN ,他比市面上所有的 VS.NET 书籍详细。tuenhai为了装 MSDN ,可是牺牲了tuenhai的 98 和 XP 双启动,改成 Windows XP 单系统。装了 MSDN 后,你要学习正则表达式, VS.NET 2003 中点击 ” 帮助 ” ,再点击 ” 搜索 ” ,然后输入 ” 正则 ” ,一回车,哇,找到 470 个主题,这下你慢慢研究吧。实在研究不透,也不用急,还有 Google 和 CSDN 呢。
  ( 2 )在线 Microsoft .NET 框架 SDK 快速入门教程
  ( 3 ) 微软中国社区
  ( 4 )在线 中文 MSDN

  为什么选择 VS.NET ,为什么看好 VS.NET ,看看 Microsoft 的 Help 文档有多详尽就知道了。如果你不去利用 Microsoft 提供的庞大的 Help 资源,是不是有点对不起盖茨呢!  

2. CSDN
CSDN 号称中国最大的开发者网络,确实不假。tuenhai最常去的是 CSDN 的
文档
论坛
  只要你善于利用搜索功能,你在开发中遇到的许多问题可在 文档 和 论坛 中找到答案。如果你在开发过程中遇到疑难,而你又认为 Bill Gates 帮不上你的忙,那么,你就上 CSDN 吧,一定会让你满意的。
  教你两个绝招,第一招,是 ” 搜索大法 ” 。遇到问题,首先是在 CSDN 的 文档 和 论坛 进行搜索,看有无类似答案。如不行,再下一招。
第二招, ” 提问大法 ” ,只要有礼貌有诚意地在论坛提问,一定有许多人乐于回答你的问题。

3.  其他相关网站、专栏
有不少网站开辟 VS.NET 专栏,常去看看,必有收获。
太平洋开发特区
网猴教程连载
天极 的 Visual Studio.NET 专栏
赛迪的 NET 专区
CSDN 上 Latitude 的 VS.NET 专栏
孟宪会之精彩世界
博客园

.net 博客
博客堂

北京希望电子出版社图书素材资料下载 (http://www.b-xr.com/bbs.htm )
清华大学出版社 VS.NET 源码下载 (http://www.wenyuan.com.cn/soft_index.asp)

还有tuenhai的小站

4.  国外编程学习资源
如果你的 E 文不错,不妨上 E 文网站去取经。  








































最新文章
Connect Layers PRO v1.3.2 AE插件
对于M1/M2/M3/M4芯片的电脑,如果软件官方未兼容 M1/M2/M3/M4,可以使用 Rosetta2 转译运行。在Apple Silicon ARM Mac电脑上安装Rosetta 2 运行intel应用苹果自家的M1和M2/M3/M4芯片都是ARM架构,所以M1和M2/M3/M4是完全通用的,未来就算有
LangChain 中文入门教程
colab地址(包含本文所有案例)、gitbook(方便阅读)、github地址  如果想把 OPENAI API 的请求根路由修改成自己的代理地址,可以通过设置环境变量 “” 来进行修改,参考代码。或在初始化OpenAI相
iOS13正式版更新内容推荐
苹果iOS 13正式版带来了多项重大更新,包括全新的深色模式、增强的照片编辑功能、更加隐私保护的登录方式以及全新的Arcade游戏订阅服务等。地图、提醒事项、Siri和CarPlay车载系统也得到了显著改进。iOS 13的优化让App启动速度更快,面容ID
Android应用的几种开发方式
1、前言   自苹果 iOS 和谷歌 Android 操作系统发布以来,在互联网界就多了一个新名词:App(意为运行在智能移动终端上的第三方应用程序)。   最初的 App 有两种形式:一种是基于本地(操作系统)运行的
docker安装portainer
成功后,就可以访问了ip+9000第一次 需要给admin设置密码默认选择local就可以了配置远程节点编辑文件:vi /usr/lib/systemd/system/docker.service修改ExecStart行,增加内容-H tcp://0.0.0.0:2375 ,修改后如下ExecStart=/usr/bin/dockerd
2024年中国AI框架市场预测:昇思份额将达30%的背后逻辑与机遇
在人工智能技术蓬勃发展的今天,各大AI框架之间的竞争愈演愈烈。2024年,中国AI框架市场的格局将迎来新的变革,其中昇思框架的市场份额预计将达到30%,成为行业内新的焦点。近日,在北京中关村国际创新中心召开的昇思人工智能框架峰会上,
3D2015年周三连号走势图近1000期带连线
功能类福彩3D显示遗漏:显示/隐藏遗漏值,遗漏值是指自上期开出到本期间隔的期数。福彩3D遗漏分层:是将当前遗漏值用柱状图形标注。福彩3D分段线:是每五期使用分隔线,使横向导航更加清晰。福彩3D显示断区:在分区走势中使用,将开出0个号
Docker实战 | 第三篇:Docker安装Nginx,实现基于vue-element-admin框架构建的项目线上部署
在上一文中通过IDEA集成Docker插件实现微服务的一键部署,但是前后端分离的项目,除了后端微服务的部署之外,当然还少不了前端工程的部署。所以本篇讲述如何通过Docker安装Nginx实现前端Vue项目工程的部署。1. 创建目录2. 创建配置文件在ng
JUL965毕业典礼后:“庆祝JUL965毕业典礼:开启人生新篇章的辉煌时刻”
  毕业典礼是一个重要的人生里程碑,标志着学生在学术旅程中的结束与新生活的开始。对于每位参与者而言,这不仅仅是一次简单的仪式,更是一种对过去努力和成就的认可
AI智能改写,让文字更具力量,创作更简单
标题:AI智能改写,让文字更具力量,创作更简单在当今信息爆炸的时代,文字已经成为我们传递思想、表达情感的重要工具。无论是学术论文、新闻报道,还是文学作品、广告文案,都离不开文字的力量。然而,创作并非易事,有时候我们会因为词汇
相关文章
推荐文章
发表评论
0评