VB获取文件完整绝对路径
我想设计一个程序,当用Dialog一次打开多个文件时,获得这些文件的完整路径,并将获得的路径写入到程序所在文件夹下的st.ini文件中1.当St.ini文件不存在时自动建...
我想设计一个程序,当用Dialog一次打开多个文件时,获得这些文件的完整路径,并将获得的路径写入到程序所在文件夹下的st.ini文件中
1.当St.ini文件不存在时自动建立
2.每次运行程序后从st.ini中获取路径信息并将他们用AddItem的方法添加到List1中
3.当单击list1 中的列表时,Label1.显示单击list1上反白选择的文字。
请给出源代码
如果好的话再追加你50分,谢谢。 展开
1.当St.ini文件不存在时自动建立
2.每次运行程序后从st.ini中获取路径信息并将他们用AddItem的方法添加到List1中
3.当单击list1 中的列表时,Label1.显示单击list1上反白选择的文字。
请给出源代码
如果好的话再追加你50分,谢谢。 展开
4个回答
展开全部
'添加一个Microsoft Common Dialog Control 6.0部件
'添加一个CommandButton控件
'添加一个ListBox控件
'添加一个Label控件
'------------------------------------------------
'读写INI文件
Private Declare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, lpKeyName As Any, ByVal lpDefault As String, ByVal lpRetunedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function SaveINI Lib "Kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As String, ByVal lplFileName As String) As Long
'读写INI文件
Function GetINI(AppName As String, KeyName As String, filename As String) As String
Dim RetStr As String
RetStr = String(10000, Chr(0))
GetINI = Left(RetStr, GetPrivateProfileString(AppName, ByVal KeyName, "", RetStr, Len(RetStr), filename))
'读:Rtn = GetINI(AppName, KeyName, filename)
'写:SaveINI appname,keyname,string,filename
End Function
Private Sub Command1_Click()
CommonDialog1.Filter = "所有文件(*.*)|*.*"
CommonDialog1.FilterIndex = 1
CommonDialog1.ShowOpen
List1.AddItem CommonDialog1.filename
End Sub
Private Sub Form_Load()
For i = 0 To Val(GetINI("listcount", "Count", App.Path & "\st.ini")) - 1
List1.AddItem GetINI("list", CStr(Format(i, "000")), App.Path & "\st.ini"), i
Next i
End Sub
Private Sub Form_Unload(Cancel As Integer)
Dim i As Integer
For i = 1 To List1.ListCount
SaveINI "list", CStr(Format(i - 1, "000")), List1.List(i - 1), App.Path & "\st.ini"
Next i
SaveINI "ListCount", "Count", List1.ListCount, App.Path & "\st.ini"
End Sub
Private Sub List1_Click()
Label1.Caption = List1.Text
End Sub
'添加一个CommandButton控件
'添加一个ListBox控件
'添加一个Label控件
'------------------------------------------------
'读写INI文件
Private Declare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, lpKeyName As Any, ByVal lpDefault As String, ByVal lpRetunedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function SaveINI Lib "Kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As String, ByVal lplFileName As String) As Long
'读写INI文件
Function GetINI(AppName As String, KeyName As String, filename As String) As String
Dim RetStr As String
RetStr = String(10000, Chr(0))
GetINI = Left(RetStr, GetPrivateProfileString(AppName, ByVal KeyName, "", RetStr, Len(RetStr), filename))
'读:Rtn = GetINI(AppName, KeyName, filename)
'写:SaveINI appname,keyname,string,filename
End Function
Private Sub Command1_Click()
CommonDialog1.Filter = "所有文件(*.*)|*.*"
CommonDialog1.FilterIndex = 1
CommonDialog1.ShowOpen
List1.AddItem CommonDialog1.filename
End Sub
Private Sub Form_Load()
For i = 0 To Val(GetINI("listcount", "Count", App.Path & "\st.ini")) - 1
List1.AddItem GetINI("list", CStr(Format(i, "000")), App.Path & "\st.ini"), i
Next i
End Sub
Private Sub Form_Unload(Cancel As Integer)
Dim i As Integer
For i = 1 To List1.ListCount
SaveINI "list", CStr(Format(i - 1, "000")), List1.List(i - 1), App.Path & "\st.ini"
Next i
SaveINI "ListCount", "Count", List1.ListCount, App.Path & "\st.ini"
End Sub
Private Sub List1_Click()
Label1.Caption = List1.Text
End Sub
展开全部
可以试试:
Shell
"app.exe
"
&
app.Path
&
"\文件.flv",
vbNormalFocus
友情提示:Shell在操作文件路径的时候,如果路径中或者文件名中包含空格,需要利用Chr(34)对路径进行在处理!!
测试不通过的话再留言!!
Shell
"app.exe
"
&
app.Path
&
"\文件.flv",
vbNormalFocus
友情提示:Shell在操作文件路径的时候,如果路径中或者文件名中包含空格,需要利用Chr(34)对路径进行在处理!!
测试不通过的话再留言!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以将应用程序及需要的参数文件放在同一个目录下,这样你就是移动到别的电脑上也是一样可以执行的.
如:
...\app.exe
...\文件.flv
先取得参数文件的路径
Dim
curFile
as
string
curFile=App.Path
+
"\文件.flv"
...
curFile="app.exe
"+curFile
'转换为一字符串,注意
app.exe
后面的空格!
然后再执行你的
Shell
curFile,vbNormalFocus
如:
...\app.exe
...\文件.flv
先取得参数文件的路径
Dim
curFile
as
string
curFile=App.Path
+
"\文件.flv"
...
curFile="app.exe
"+curFile
'转换为一字符串,注意
app.exe
后面的空格!
然后再执行你的
Shell
curFile,vbNormalFocus
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sPath
=
"app.exe
c:\绝对路径\文件.flv"
If
Left(Mid(sPath,
10),
2)
=
":\"
Then
Shell
sPath
这样检测路径比较精确,检测.exe空格后2个字符,如果是":\"就会执行Shell语句
=
"app.exe
c:\绝对路径\文件.flv"
If
Left(Mid(sPath,
10),
2)
=
":\"
Then
Shell
sPath
这样检测路径比较精确,检测.exe空格后2个字符,如果是":\"就会执行Shell语句
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询