终于查到了,给分先。
  ShellExecute(GetDesktopWindow, 'open', 'rundll32.exe',
                   PChar('shell32.dll, OpenAs_RunDLL' + ' c:\haha.www'),
                      nil,  SW_SHOWNORMAL);

解决方案 »

  1.   

    shellexecute(0,nil,'yourfilename',nil,nil,SW_SHOWNORMAL)
      

  2.   

    to kevin_gao:
    运行后,提升:
    shell32.dll出错
    项目丢失
      

  3.   

    呵呵,急了
    我是加空格了,直接copy过去的,然后在c:下建一个haha.www
    确实出错,你在别的机器上试了吗?
      

  4.   

    奇怪了,我的机器上是可以实现的。
    而我不在文件名前加空格才会提示跟你一样的错误。
    我是用的win2000Adv Server+delphi6
      

  5.   

    文章出自这里:
    http://www.tiandigo.net/program/delphi/tips/openasdlg.html其他人试试看有没有问题,反正我这里是可以实现的.
      

  6.   

    //uses 语句中加一个unit进去:ShellAPI;!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    procedure TForm1.Button1Click(Sender: TObject);
    begin
     ShellExecute(GetDesktopWindow, 'open', 'rundll32',
                      PChar('shell32.dll, OpenAs_RunDLL'),nil,SW_SHOWNORMAL);
    end;
      

  7.   

    终于搞定了!
      ShellExecute(GetDesktopWindow, 'open', 'rundll32.exe',
                       PChar(' shell32.dll,OpenAs_RunDLL ' + 'c:\1.lst'),
                          nil,SW_SHOWNORMAL);
    可以实现!
    openas_rundll之前不能有空格1
      

  8.   

    其实这在 “运行”通过命令就可以实现:
    c:\windows\rundll32.exe shell32.dll,OpenAs_RunDLL c:\1.lst
      

  9.   

    可以实现了!, ...........shell32.dll,{这里不能有空格}openas_rundll....
      

  10.   

    没错,chocoboy说的对
    to kevin_gao:是他抢走你一半的分,呵呵
      

  11.   

    larryuan(袁代码) :ChocoboY(陆行鸟)就是用的98实现的!
      

  12.   

    还有一点注意大小写 "penAs_RunDLL"
      

  13.   

    还有一点注意大小写 "OpenAs_RunDLL"