用VB编写的exe程序,怎样才能让程序启动时加载选中的文件内容?

比如编写一个简单的文档编辑程序,生成为Model.exe。然后选中我在F盘的一个名为test.txt的文件,右键选择打开方式,“选择程序”选中Model.exe,点击确定... 比如编写一个简单的文档编辑程序,生成为Model.exe。然后选中我在F盘的一个名为test.txt的文件,右键选择打开方式,“选择程序”选中Model.exe,点击确定,Model.exe确实启动了,可是里面没有test.txt里面的内容。郁闷,不知道在Form_load()子程序里面应该怎么设置,希望知道的朋友指点一下。我是VB新手……
Private Sub MDIForm_Load()
Dim SS As String
Dim tmp As String
SS = Command
If SS <> "" Then
'注,如果是把欲打开文件拖拽到可执行程序上,则SS=文件路径名
'如果是点击文件右键选择可执行程序(本程序)打开,则SS="文件路径名"
'多出来的双引号必须去掉才能被Open语句识别,因为 Open在处理其后面的字符串时
'会自动为字符串内容加上双引号

'MsgBox SS
If Left(SS, 1) = """" Then
SS = Mid(SS, 2, Len(SS) - 2)
' MsgBox SS
End If
If frmMDI.ActiveForm Is Nothing Then
' MsgBox "123456789"
FileNewProc
End If
Open SS For Input As #1
Do While Not EOF(1)
Line Input #1, tmp
frmMDI.ActiveForm.RichTextBox1.Text = frmMDI.ActiveForm.RichTextBox1.Text & tmp & vbCrLf
Loop
Close #1
frmMDI.ActiveForm.Caption = SS
Else
FileNewProc
End If
End Sub
加入msgbox时用来测试SS的值的,不会用其他方法测试,只能这样了。
展开
 我来答
美迅科技
2009-10-23 · TA获得超过256个赞
知道小有建树答主
回答量:341
采纳率:0%
帮助的人:243万
展开全部
在form_load下编写如下代码:

Private Sub Form_Load()
Dim cmd As String
cmd = Command
If cmd <> "" Then
'在此添加你处理test.txt的内容
'以下为示例:
Open cmd For Input As #1
Do While Not EOF(1)
Line Input #1, tmp
Text1.Text = Text1.Text & tmp
Loop
Close #1
Else
'程序未被命令打开任何文件
End If

End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a1b36101c
2009-10-23 · 超过31用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:0
展开全部
command变量中的内容就是程序启动时的参数内容,从中可以得到test.txt的文件名了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
烟云忆旧梦
2009-10-23 · TA获得超过106个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:163万
展开全部
你用来打开。传来文件名你没有处理。把文件名接收后再用你的想法打开显示出来。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式