| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1812 人关注过本帖
标题:用VB怎么样直接调用外部程序EXE所生成的文件
只看楼主 加入收藏
笨笨编程
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-2-26
收藏
 问题点数:0 回复次数:4 
用VB怎么样直接调用外部程序EXE所生成的文件
各位高手们,小弟有礼了!

我在编程时候遇到了点问题,想问一下,请各位高手帮我一下,谢谢!

我的问题是:我用VB调用外部程序EXE,然后这个外部程序EXE生成了一个dxf文件,我怎么直接调用这个dxf文件?就是使这个dxf文件生成之后马上就被打开,然后我就可以直接对这个dxf文件进行操作了,而不必再去找到这个文件之后再打开。请各位高手们指导我一下,谢谢!
搜索更多相关主题的帖子: EXE 文件 
2006-02-26 18:43
ryu
Rank: 1
等 级:新手上路
帖 子:124
专家分:0
注 册:2006-2-12
收藏
得分:0 

Private Sub FileList_DblClick()
If FileList.ListItems.Count > 0 Then
Call mProcFunc.subShellApplication(mProcFunc.ftnReturnNodePath(Explorer.SelectedItem.FullPath), FileList.SelectedItem.Text, Me.hwnd)
End If
End Sub


本帖版权归ryu所有.如果引用本帖,请注明帖子的出处和作者;本帖如系引用,其版权归原作者所有.
2006-02-26 21:10
ryu
Rank: 1
等 级:新手上路
帖 子:124
专家分:0
注 册:2006-2-12
收藏
得分:0 

mProcFunc模块

Public Function ftnStripNullChar(sInput As String) As String
Dim x As Integer
x = InStr(1, sInput$, Chr$(0))
If x > 0 Then
ftnStripNullChar = Left(sInput$, x - 1)
End If
End Function

Public Function ftnReturnNodePath(sExplorerPath As String) As String
Dim iSearch(1) As Integer
Dim sRootPath As String
iSearch%(0) = InStr(1, sExplorerPath$, "(", vbTextCompare)
iSearch%(1) = InStr(1, sExplorerPath$, ")", vbTextCompare)
If iSearch%(0) > 0 Then
sRootPath$ = Mid(sExplorerPath$, iSearch%(0) + 1, 2)
End If
If iSearch%(1) > 0 Then
ftnReturnNodePath$ = sRootPath$ & Mid(sExplorerPath$, iSearch%(1) + 1, Len(sExplorerPath$)) & "\"
End If
End Function

Public Function ftnReturnAttributes(lAttribute As Long) As String
If lAttribute& And FILE_ATTRIBUTE_READONLY Then
ftnReturnAttributes = "r"
End If
If lAttribute& And FILE_ATTRIBUTE_ARCHIVE Then
ftnReturnAttributes = ftnReturnAttributes & ".a"
End If
If lAttribute& And FILE_ATTRIBUTE_SYSTEM Then
ftnReturnAttributes = ftnReturnAttributes & ".s"
End If
If lAttribute& And FILE_ATTRIBUTE_HIDDEN Then
ftnReturnAttributes = ftnReturnAttributes & ".h"
End If
End Function

Public Sub subShellApplication(sCorrectPath As String, sFileName As String, lHwnd As Long)
Dim lShellFile As Long
lShellFile& = ShellExecute(lHwnd&, "open", sFileName$, vbNullString, sCorrectPath$, SW_SHOWNORMAL)
If lShellFile& > 32 Then
Exit Sub
Else
Select Case lShellFile&
Case 2
If Right(sFileName$, 3) <> "htm" Then
MsgBox "File not found.", vbCritical + vbOKOnly, "X-File:"
End If
Exit Sub
Case 3
MsgBox "Path not found.", vbCritical + vbOKOnly, "X-File:"
Exit Sub
Case 5
MsgBox "Access denied.", vbCritical + vbOKOnly, "X-File:"
Exit Sub
Case 8
MsgBox "Out of Memory.", vbCritical + vbOKOnly, "X-File:"
Exit Sub
Case 32
MsgBox "Shell32.dll not found.", vbCritical + vbOKOnly, "X-File:"
Exit Sub
End Select
End If
End Sub

Public Function Ptr2StrU(ByVal pAddr As Long) As String
Dim lStrLen As Long
lStrLen& = lstrlenW(pAddr)
Ptr2StrU = Space$(lStrLen&)
CopyMemory ByVal StrPtr(Ptr2StrU), ByVal pAddr, lStrLen& * 2
End Function

Public Function ftnSelectedPath(sInputPath As String) As String
Dim iSearch(0) As Integer
Dim sDrivePath As String
Dim sFolderPath As String
iSearch%(0) = InStr(1, sInputPath$, "(", vbTextCompare)
sDrivePath$ = Mid(sInputPath$, iSearch%(0) + 1, 2)
iSearch%(0) = InStrRev(sInputPath$, ")", -1, vbTextCompare)
If iSearch%(0) > 0 Then
sFolderPath$ = Mid(sInputPath$, iSearch%(0) + 2, Len(sInputPath$) - iSearch%(0))
End If
ftnSelectedPath$ = sDrivePath$ & "\" & sFolderPath$
End Function


本帖版权归ryu所有.如果引用本帖,请注明帖子的出处和作者;本帖如系引用,其版权归原作者所有.
2006-02-26 21:12
xinfresh
Rank: 4
等 级:贵宾
威 望:13
帖 子:594
专家分:0
注 册:2006-1-13
收藏
得分:0 
ryu,上次版主怎么跟你说的,要多写注释,一看你就是个牛人,不写注释,谁看得懂啊

E-mail:xinfresh@QQ:383094053校内:http:///getuser.do?id=234719042
2006-02-26 22:11
笨笨编程
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-2-26
收藏
得分:0 

谢谢!谢谢!
我是第一次发贴,就得到你们的帮助,真的非常感动!
虽然我不是很懂上面的回复,,我会好好看的,谢谢你们!真的非常感谢!


2006-02-27 00:00
快速回复:用VB怎么样直接调用外部程序EXE所生成的文件
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025857 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved