中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > .NET > 临时文章
自定义文件类型以及参数传递的实现(VB.NET)
作者:未知 时间:2005-07-27 21:40 出处:CSDN 责编:chinaitpower
              摘要:自定义文件类型以及参数传递的实现(VB.NET)

                                自定义文件类型以及参数传递的实现(VB.NET)
作者:wgscd           
请尊重著作权

         网上很多人问关于自定义文件类型以及参数传递的问题,在.NET里
自定义文件类型很好实现,一个简单的方法就是在VS的安装发布向导---打包
里自定义文件类型,这个就不用说了,你简单设置一下就OK了(不要说你不会哦!)
接下来就是个参数传递的问题使许多人烦恼了(我就被烦过)。
话不多说,如下
         在VB6.0里要获取打开程序的参数可以使用command()。
具体例子:
 Function GetCommandLine(Optional MaxArgs)
  ′声明变量。
  Dim C, CmdLine, CmdLnLen, InArg, I, NumArgs
  ′检查是否提供了 MaxArgs 参数。
  If IsMissing(MaxArgs) Then MaxArgs = 10
  ′ 使数组的大小合适。
  ReDim ArgArray(MaxArgs)
  NumArgs = 0: InArg = False
  ′取得命令行参数。
  CmdLine = Command()
  CmdLnLen = Len(CmdLine)
  ′以一次一个字符的方式取出命令行参数。
  For I = 1 To CmdLnLen
  C = Mid(CmdLine, I, 1) ′检测是否为 space 或 tab。
  If (C <> ″ ″ And C <> vbTab) Then
  ′若既不是 space 键,也不是 tab 键,则检测是否为参数内含之字符。
  If Not InArg Then
  ′新的参数。检测参数是否过多。
  If NumArgs = MaxArgs Then Exit For
  NumArgs = NumArgs + 1
  InArg = True
  End If
  ′将字符加到当前参数中。
  ArgArray(NumArgs) = ArgArray(NumArgs) + C
  Else
  ′找到 space 或 tab。将 InArg 标志设置成 False。
  InArg = False
  End If
  Next I
  ReDim Preserve ArgArray(NumArgs) ′调整数组大小使其刚好符合参数个数。
  GetCommandLine = ArgArray() ′将数组返回。
  End Function

---------------------------------------------------

         在VB.NET里呢?其实差不多,只不过要用System.Environment.GetCommandLineArgs。

具体例子:

Sub main1() '检测传进来的参数

        Dim cmds As String()
        cmds = System.Environment.GetCommandLineArgs


        If cmds.Length > 0 Then
            Dim i As Integer
            For i = 0 To cmds.Length - 1

                If cmds(i).ToString Like "*.abc" Then '其中abc为你自定义文件的扩展名
                    cmd = cmds(i).ToString
                    iscaseurl = True

                End If
            Next

        End If
    End Sub


dim cmd as string="" '用来保存传入的参数
dim iscaseurl as Boolean= False'判断是否是你需要的参数

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)

Handles MyBase.Load

        main1() '检测参数

            If iscaseurl = False Then'不是你需要的参数

'do your 。。。。。。。。。。。。。

            Else'是需要处理的参数

'这里添加处理的代码,cmd 就是你要的参数

msgbox("这里添加处理的代码,cmd 就是你要的参数")

                iscaseurl = False


            End If


        Catch ex As Exception

            MsgBox("erro")

        End Try

    End Sub


当然如果你需要的话可以在 InitializeComponent() 调用之后调用main1()
来检测和保存打开程序传进来的参数。




 


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有