在VB.net 2010 下如何用命令行得到文件路径
vb.net吧
全部回复
仅看楼主
level 9
金炎凤凰 楼主
  已经做好了文件的关联,当双击这个文件时,读取不到里面的数据,开始用 comand得到命令行来获取双击文件时的程序名,结果失败,没有得到。后来用 My.Application.CommandLineArgs 来获取双击文件时的程序名,结果还是失败,请都大家,我哪里用错误了呢?
2012年04月15日 14点04分 1
level 8
My.Application.CommandLineArgs 这个我没失败呀
2012年04月16日 07点04分 2
level 9
金炎凤凰 楼主
是得到被关联的文件名和路径,比如我的被关联文件叫做 游戏存档.ice ,当双击 游戏存档.ice文件时,得到游戏存档.ice的绝对路径和文件名
2012年04月16日 09点04分 3
level 8
可以的 我做个小东东你试试 改扩展名 RAR解压
必须 安装 .net 4.0
2012年04月16日 10点04分 4
level 8
关联要手动
你自己把我做的exe关联一个文件然试试吧
2012年04月16日 10点04分 5
level 9
金炎凤凰 楼主
我编写的华容道游戏,完美解决关联方案,下载此图片把扩展名.JPG 改成 .rar 即可
2012年04月17日 06点04分 6
level 9
金炎凤凰 楼主
关联文件要在主程序中进行关联,解除关联也要在程序中,因为玩家不是程序员。
2012年04月17日 06点04分 7
level 9
金炎凤凰 楼主
6楼图片上传的文件不能解压,重新传一个
2012年04月17日 06点04分 8
level 8
我只是把你想要的功能弄出来,关联文件其实就是改下注册表,因为我比较懒关联文件没弄,只是把获取文件路径功能做出来给你试试.
你邮箱是什么我直接发送到你邮箱算了.
2012年04月17日 07点04分 9
level 8

效果图片保留 7天 不知道是不是你想要的结果
2012年04月17日 07点04分 10
level 9
金炎凤凰 楼主
谢谢
fjy206  的热心回复。
2012年04月17日 16点04分 11
level 9
金炎凤凰 楼主
我上传的图片里面也有rar压缩文件,没有你的下载后改扩展名没有事,我的下载后图片却被压缩了呢
2012年04月18日 07点04分 12
level 8
没看懂你的意思?
你的意思是不是说为什么我的图片下载后解压没事,你的下载后就不行?
是不是你的图片太大了,被百度处理了一次 ?
2012年04月18日 11点04分 13
level 9
金炎凤凰 楼主
原来是这样,谢谢啊
2012年04月18日 12点04分 14
level 9
金炎凤凰 楼主
'查看存档文件是否存在
If IO.File.Exists(CurDir() & "\游戏进度.ice") Then
读档ToolStripMenuItem.Enabled = True
Dim myArg() As String = System.Environment.GetCommandLineArgs
For i As Integer = 0 To myArg.GetUpperBound(0)
If myArg(i).ToString.LastIndexOf(".ice") > 0 Then '其中.ice为你自定义文件的扩展名
CaiDanclick = False
ReadFile(CurDir() & "\游戏进度.ice")
End If
Next i
Else
读档ToolStripMenuItem.Enabled = False
End If
2012年04月21日 07点04分 15
level 8
If myArg(i).ToString.LastIndexOf(".ice") > 0 Then 这句有问题 你能排除我给你的这个路径吗? "D:/y.ice/a.bin"
2012年04月21日 07点04分 16
level 9
金炎凤凰 楼主

2012年04月21日 09点04分 17
level 8
我还是不明白 myArg(i).ToString.LastIndexOf(".ice") > 0 有什么用
如果路径是 "D:/y.ice/a.bin" 它不会返回 真
如果路径是 "D:/y/a.ice" 它同样不会返回 真
只有当 ".ice" 不存在 或者 路径是 ".ice/***/***"(*** 不包含 ".ice") 才会是真 而 ".*"这样的文件夹是不存在的 ,如果myArg(i) 是路径的话 那 If myArg(i).ToString.LastIndexOf(".ice") > 0 Then 它基本上没有作用.
如果我说错了可以纠正.

2012年04月21日 11点04分 18
level 8
刚才说错了把上面的真和假,调换下我想成<了,第三点去掉
2012年04月21日 12点04分 19
level 1
呃,很简单吧.....
Dim commandStr() As String = Environment.GetCommandLineArgs()
ListBox1.DataSource = commandStr
列表中的索引1开始就是关联打开的文件,列表索引0是当前程序路径。
打开文件前先判断文件是否存在再打开文件,文件不存在就msgbox提示一下。
也可以加try纠错语句。
2012年04月21日 14点04分 20
1 2 尾页