RetVal = Shell("C:\WINDOWS\Start Menu\Programs\附件\NotePad.exe" "c:\test.txt", 1)   

解决方案 »

  1.   

    用shell我当然知道了,我现在在学SDK编程。
    我想通过这个例子学习如何转换C 和VB 代码
      

  2.   

    '吧我的代码贴出来,请大家看下该怎么修改
    Option Explicit
    Private Type STARTUPINFO
        cb As Long
        lpReserved As String
        lpDesktop As String
        lpTitle As String
        dwX As Long
        dwY As Long
        dwXSize As Long
        dwYSize As Long
        dwXCountChars As Long
        dwYCountChars As Long
        dwFillAttribute As Long
        dwFlags As Long
        wShowWindow As Long
        cbReserved2 As Long
        lpReserved2 As String
        hStdInput As Long
        hStdOutput As Long
        hStdError As Long
    End TypePrivate Type PROCESS_INFORMATION
         hProcess As Long
         hThread As Long
         dwProcessId As Long
         dwThreadId As Long
    End TypePrivate Type SECURITY_ATTRIBUTES
      nLength As Long
      lpSecurityDescriptor As Long
      bInheritHandle As Long
    End TypePrivate Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" _
    (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, _
    lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, _
    ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, _
    lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As LongPrivate Sub Command1_Click()Dim si As STARTUPINFO
    Dim pi As PROCESS_INFORMATION
    'Dim sa As SECURITY_ATTRIBUTES
    si.cb = Len(si)
    'sa.nLength = Len(sa)
    CreateProcess "C:\WINDOWS\Start Menu\Programs\附件\NotePad.exe", " c:\test.txt", ByVal sa, ByVal sa, ByVal 0, ByVal 0, ByVal 0, ByVal 0, ByVal si, ByVal pi
    End Sub
      

  3.   

    CreateProcess "C:\WINDOWS\Start Menu\Programs\附件\NotePad.exe", " c:\test.txt", ByVal sa, ByVal sa, ByVal 0, ByVal 0, ByVal 0, ByVal 0, ByVal si, ByVal pi你要将Byval搞清清楚
    在被dbcontrols称为垃圾的
    本人的专贴中专门讲了指针声明中不用 byval
    即已做民取地址操作了
    调用时用byval
    是只有在Value是地址才会用
    所以CreateProcess "C:\WINDOWS\Start Menu\Programs\附件\NotePad.exe", " c:\test.txt", sa, sa, 0, 0, 0, 0, si, pi
      

  4.   

    那个所谓一第一高手
    dbcontrols
    为什么不出招?
    还是把他用的成语还给他,我发现最合适!!!!!!
    黔驴技穷
      

  5.   

    Bardo(巴顿) :
    好象还是不行,
    你在c:\生成一个test.txt文件,文件里面随便输几个字,然后运行下我的C代码就能够把这个文件调出来,但是VB却不行
      

  6.   

    to Bardo(巴顿) :
    你上次贴的自我经历的帖子我也看了,实在很佩服你
      

  7.   

    呵呵,如果Bardo(巴顿)说的都是真的话,那么你实在很不容易
      

  8.   

    CreateProcess 是不显示的
    你可用
    ShellExcuate

    WinExec
    这两个函数回复人: dbcontrols(泰山__帮助你使我感到快乐.) (2002-1-25 15:45:41)  得0分 
    什么自我经历!恶心!  草包只会骂人
    什么也不会!!!!!!!!!!!!!!!!!!!!!!!!!
      

  9.   

    我还要问一下
    什么是命令行?CommandLine
    什么是环境变量?Environment
    有什么用?