zoukankan      html  css  js  c++  java
  • DELPHI 5种运行程序的方法具体应用实例(带参数)

    http://www.02t.cn/article/code/102.html

    https://msdn.microsoft.com/en-us/library/windows/desktop/ms687393(v=vs.85).aspx

    一段代码,从2007转到XE 下,编译,运行,发现

    WinExec 不能运行指定的EXE文件,换成 ShellExecute 虽然可以了。

    测试后,发现还真是有这个问题。有问题的地方就有原因。

    原因是从 string 转换到 Pansichar 时,要先 ansistring,然后pansichar。
    只有pansichar 是不行的,好像是丢失数据了。
    2007下2种方式都能运行
    procedure TForm1.Button1Click(Sender: TObject);
    var
     sfile: string;
    begin
      sfile := 'c:windows
    otepad.exe';
      WinExec(PChar(sfile), SW_SHOWNORMAL)
    //  WinExec('c:windows
    otepad.exe', SW_SHOWNORMAL)
    end;
    
    
    XE XE7下,只有第二种能运行,就是文件名 不能使用变量。
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
     sfile: string;
    begin
      sfile := 'c:windows
    otepad.exe';
      WinExec(PAnsiChar(sfile), SW_SHOWNORMAL)
    //  WinExec('c:windows
    otepad.exe', SW_SHOWNORMAL)
    end;
  • 相关阅读:
    转贴:CSS伪类与CSS伪元素的区别及由来具体说明
    Docker + Consul 多数据中心模拟
    Spring之事件发布系统
    ExecutorService的submit方法的坑
    固定频率调用接口方案
    叠罗汉III之推箱子
    叠罗汉II
    叠罗汉I
    滑雪
    华为OJ:火车进站
  • 原文地址:https://www.cnblogs.com/CodeGear/p/4323245.html
Copyright © 2011-2022 走看看