广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 10430 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
绿茶三头犬 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x81 鲜花 x215
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[.Net][求助] 求救,关于 VB.NET 的
1. www.abc.com/index.php 能否载入成功,若能则显示 Label1,else 显示 Label2

2. 读取 ini 问题,虽然在网上找到方法,也十分成功,但网上的方法大多是


PartA_1=TestA1


PartB_1=TestB1

    Dim lReturnLen1 As UInt64

    Dim sSection1 As String = "Part1"   '区段
    Dim sKey1 As String = "PartA_1&qu ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容



[ 此文章被秘密行动在2013-01-27 19:24重新编辑 ]


—重制 CS:UCE (基本上有些缺陷的,但真是很小事,第一个版本麻烦大家帮忙测试,连线那些应该就不行了,我不懂怎样修复 - - 抱歉 - -'
预计十月发布,应该与 Drak Moon 同步发布,正与该作者商量) [完成度:90%]
献花 x0 回到顶端 [楼 主] From:香港 | Posted:2013-01-25 06:46 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

P.S. 文章标题最好改一下,以利搜寻功能


1.

可以用 HttpWebRequest 和 HttpWebResponse 来测试网站的回应
除此之外,在连接完成后,可以进一步取得网页 或是 作其他的 request

底下的 tryConnect 连接成功会传回 true

复制程式
    Private Function tryConnect()
        Dim httpReq As Net.HttpWebRequest = Net.WebRequest.Create("http://www.google.com")
        Dim httpRes As Net.HttpWebResponse

        httpReq.Method = "GET"

        '尝试连接
        Try
            httpRes = httpReq.GetResponse
        Catch ex As Net.WebException
            MessageBox.Show(ex.Message)
            Return False
        End Try

        '检查 StatusCode (正确的话通常是 200 = Net.HttpStatusCode.OK)
        If httpRes.StatusCode = Net.HttpStatusCode.OK Then
            MessageBox.Show("OK")
            Return True
        Else
            MessageBox.Show("Oops!! Status code = " & httpRes.StatusCode)
            Return False
        End If
    End Function

2. 最简单的办法是用 REGEX (regular expression)

第一行的 pattern 是 \[.+\][\r\n]+(.+=[^\r\n]+)[\r\n]
\[ -> [
.+ -> 任何字元
\] -> ]
[\r\n]+ -> 超过一次以上的 CrLf
[^\r\n]+ -> 一次以上的非 CrLf 的字元
用刮号 () 是为了取得想要的部分而已,即是 以下 code 中 match(i).Groups(1).Value 抓到的值

要测试 regex 有许多软体可以测试,除了维基提供的 regex 编辑器
还有 Notepad++ 的插件 RegEx Helper
和免费版非常好用的的 Rad Software Regular Expression Designer
和不是免费版但却很高级的 Expresso

其实大部分的文字编辑器搜寻部分就有 Regex 的功能 (ex. Sublime Text, Notepad++, EmEditor, gVIM, Emacs, UltraEdit, TextMate, ...)
几乎所有程式设计软体也都有内建的 Regex

复制程式
    Private Function tryParse(ByVal s As String)
        Dim pattern As String = "\[.+\][\r\n]+(.+=[^\r\n]+)[\r\n]" '[XXX] <CrLf> XXX=XXX <CrLf>
        Dim match As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(s, pattern)

        If 0 <> match.Count Then '如果 match 成功
            For i As Integer = 0 To match.Count - 1
                Dim val As String = match(i).Groups(1).Value
                MessageBox.Show(val)
            Next

            Return True
        Else
            Return False
        End If
    End Function

3. 参考程式码

复制程式
    Private Function stopService(ByVal s As String)
        'Reference: http://www.vbforums.com/showthread.php?678233-RESOLVED-Stopping-a-Service-using-VB.Net

        Dim sc As New System.ServiceProcess.ServiceController

        sc.ServiceName = s
        sc.MachineName = Environment.MachineName

        Try
            If sc.Status = ServiceProcess.ServiceControllerStatus.Stopped Then '服务早就停止
                Return True
            Else
                sc.Refresh()
                sc.Stop()
                sc.WaitForStatus(ServiceProcess.ServiceControllerStatus.Stopped)

                Return True
            End If
        Catch ex As Exception
            MessageBox.Show(ex.Message)
            Return False
        End Try
    End Function

    Private Function startService(ByVal s As String)
        'Reference: http://www.vbforums.com/showthread.php?678233-RESOLVED-Stopping-a-Service-using-VB.Net

        Dim sc As New System.ServiceProcess.ServiceController

        sc.ServiceName = s
        sc.MachineName = Environment.MachineName

        Try
            If sc.Status = ServiceProcess.ServiceControllerStatus.Running Then '服务早就在跑
                Return True
            Else
                sc.Refresh()
                sc.Start()
                sc.WaitForStatus(ServiceProcess.ServiceControllerStatus.Running)

                Return True
            End If
        Catch ex As Exception
            MessageBox.Show(ex.Message)
            Return False
        End Try
    End Function

Examples:

例如想关掉 Remote Registry 服务
可以用 Win7 的工作管理员中的服务列表查 名称是 RemoteRegistry
或是用软体 System Explorer 来查

注意 description 是 "Remote Registry" 有一个空格
而真正的 name 是 "RemoteRegistry" 没有空格
呼叫函式要用 name 而不是 description

stopService("RemoteRegistry") 来关闭服务
startService("RemoteRegistry") 来重新执行服务

处理成功函式会传回 true


[ 此文章被ebolaman在2013-01-27 14:35重新编辑 ]


My BOINC stats :

献花 x1 回到顶端 [1 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2013-01-27 14:12 |
绿茶三头犬 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x81 鲜花 x215
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 ebolaman 于 2013-01-27 14:12 发表的 : 到引言文
P.S. 文章标题最好改一下,以利搜寻功能

1.
可以用 HttpWebRequest 和 HttpWebResponse 来测试网站的回应
除此之外,在连接完成后,可以进一步取得网页 或是 作其他的 request
.......




    Private Function SwitchService(ByVal strSvcName As String, ByVal blnOpen As Boolean) As Boolean
    Dim strWMIcls As String
    Dim objSvc As Object


    strWMIcls = "Win32_Service"
    objSvc = GetObject("winmgmts:").InstancesOf(strWMIcls)(strWMIcls & ".Name=""" & strSvcName & """")
    SwitchService = CallByName(objSvc, IIf(blnOpen, "StartService", "StopService"), 1) = 0
    End Function



            SwitchService("wuauserv", False)
            SwitchService("W32Time", True)


1. 其实这个与你的写法那个较好? (噢,你那个较好点)


2. 不如先说我要制作甚么,是类似释放记忆体的程式,类似 Game Booster / JetBoost
不过想自行制作,但怎清理电脑内存 - -? 即是按一下 Button 便能 Free memory
若只释放我的程式我就懂,但释放电脑记忆体就太难吧 - -?
最好每一分钟释放一次,太频密应该会导致程式出现异常吧?


3. 优先权先否将记忆体尽量分配在高优先度应用程式?


[ 此文章被秘密行动在2013-01-27 21:38重新编辑 ]


—重制 CS:UCE (基本上有些缺陷的,但真是很小事,第一个版本麻烦大家帮忙测试,连线那些应该就不行了,我不懂怎样修复 - - 抱歉 - -'
预计十月发布,应该与 Drak Moon 同步发布,正与该作者商量) [完成度:90%]
献花 x0 回到顶端 [2 楼] From:香港 | Posted:2013-01-27 19:23 |
ebolaman 手机 会员卡
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖

级别: 副版主 该用户目前不上站
版区: 程式设计
推文 x38 鲜花 x458
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

下面是引用 秘密行动 于 2013-01-27 19:23 发表的 : 到引言文



    Private Function SwitchService(ByVal strSvcName As String, ByVal blnOpen As Boolean) As Boolean
    Dim strWMIcls As String
.......

sorry, 记忆体配置部分不是我的专长

这部分请您自行研究


My BOINC stats :

献花 x0 回到顶端 [3 楼] From:台湾宽频通讯顾问股份有限公司 | Posted:2013-01-27 22:01 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.024172 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言