ShellExecute(Application.Handle, nil, 'C:\WINDOWS\CALC.EXE'+#0, nil, nil, SW_SHOWNORMAL)//启动自动关联程序ShellExecute(Application.Handle, nil, 'www.csdn.net'+#0, nil, nil, SW_SHOWNORMAL)//启动自动关联程序

解决方案 »

  1.   

    要加这个单元:
    uses shellapi;
      

  2.   

    对,用winexec和shellexecute都可以,不过shellexecute的范围会比较大些,winexec只能运行*.exe
      

  3.   

    那Application.Handle怎么得到啊?
      

  4.   

    Application.Handle 就是程序自身的句柄program Project1;uses
      Forms,
      Unit1 in 'Unit1.pas' {Form1};begin
      Application.Initialize; // <------This 
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.
    你把我给的那句程序直接用就ok了!记得uses shellapi;
      

  5.   

    谢谢 似乎明白,ShellExecute(Application.Handle, nil, 'C:\WINDOWS\CALC.EXE'+#0, nil, nil, SW_SHOWNORMAL)中的+#0是什么意思?
      

  6.   

    #0字符串结束符,其实可以不用,另外还可向应用程序传参数,如
    ShellExecute(Handle, nil, 'C:\WINDOWS\notepad', 'c:\autoexec.bat', nil, SW_SHOWNORMAL);
      

  7.   

    因为是pchar,所以+#0 不用
      

  8.   

    ShellExecute()
    用法就自已去杳帮助!!
      

  9.   

    上面说的够详细了!哎,来迟了
    用shellexecute就行了
      

  10.   

    winexec()、
    ShellExecute(0, nil, 'html file', '', nil, SW_SHOWNORMAL);都可以的,注意要 uses ShellApi 的。
      

  11.   

    uses shellapi
    shellexectue(handle,open,'*.htm','','',sw_shownormal);
      

  12.   

    最简单的办法
    引用fmxutils.pas单元(Delphi自己的)
    调用ExecuteFile(...)
    人家已经帮我们把ShellExecute封装好了!
      

  13.   

    如何去学习delphi的各个单元呢?