大家好!
    本人有几个关于delphi6.0调用外部程序的问题,希望懂得这方面的程序员或编程爱好者能给到我的答案,通过后即给分100,谢谢你的帮助。
    问题如下:
    1、调用windows的自带的记事本、画图、记算器。
    2、调用office的word\excel
    3、调用后怎样取得记事本或word文档的内容放到编辑框中去。
    注意是在delphi环境下,要给出代码。

解决方案 »

  1.   

    1:winexec(filename,openmode)//按F1看帮助,填写参数openmode
      记事本、画图、记算器都有相应的程序名
      NOTEPAD.EXE.......
    2:ShellExecute(0, nil, filename, nil, nil, SW_NORMAL);
      //自动调office打开word\exxcel
      //引用单元:shellapi
    3:没试过
      

  2.   

    1,2个问题可以用:ShellExecute(0, nil, filename, nil, nil, SW_NORMAL);
    解决,在uses中加:ShellAPi;
    第3个问题没试过,好像比较难
      

  3.   

    to:XXSingle
      能给出记事本、画图、记算器都有相应的程序名吗?
      还有ShellExecute(0, nil, filename, nil, nil, SW_NORMAL)中的filename名称,如果是
      记事本是..
      记算器是..
      画图是..
      word是..
      excel是..
      谢谢,能具体一些更好!
      因为我不太清楚这些~~~~老兄,交给你啦!
      

  4.   

    需要使用 DDE编程。比较复杂
      

  5.   

    winExec('.\tool\calc.exe',SW_SHOWNORMAL);计算器
    .......
    3、读取具体文件相应的内容
      

  6.   

    3、对于office可以使用ole的方式、com对象的方式、以及server页面上的组件的方式来解决。
      

  7.   

    to:thisisxutao
     winExec('.\tool\calc.exe',SW_SHOWNORMAL);
     这个确定了吗,执行时没反应,是不是错了?
     没有没其它的?谢谢~
      

  8.   

    to:XXSingle
      能否提供更的的资料
      记事本ok了,谢谢,其他的计算器、画图、还有word/excel执着行文件是什么?
      

  9.   


    以下读取WORD的a.doc
    procedure Tform1.button1click(Sender: TObject);
    var
       NewDoc:variant;
       V: OleVariant;
       FileNameTemp:String;
    begin
        if fileexists('c:\a.doc) then
       begin
        try
         FileNameTemp :='c:\a.doc' ;
         V := CreateOleObject('Word.Application'); 
         NewDoc :=V.Documents.Open(FileNameTemp); 
         NewDoc.SaveAs(FileName :='C:\TEMP.rtf',FileFormat:=3); 
         NewDoc.Close; 
         V.Quit;
         Memo1.Lines.Clear;
         Memo1.Lines.LoadFromFile('C:\TEMP.rtf'); 
        deletefile('C:\TEMP.rtf');
        except
        showmessage('c:\a.doc 可能已打开');
        end;
       end;
    end;
      

  10.   

    2
    搜索word/excel delphi就可以得到很多答案,仅在csdn内就可以