喫茶XRAYトップページ

[スレッド全体
]

[12048] 末尾がAの関数を実行する例返信 削除
2018/7/13 (金) 21:01:58 Mr.XRAY
> したがって,Delhi 2009 以降で Ansi 文字列を扱う場合は,
> 引数の型が PAnsiChar である関数を使用します.


例えば Shellexecute 関数でメモ帳を起動する時,
起動するメモ帳のパス名を PAnsiChar 型の文字列で指定するには以下のようにします.
動作確認は Windows 7 U64(SP1) + Delphi XE5(UP2) Pro VCL-32 です.
uses に ShellAPI が必要です.

procedure TForm1.Button1Click(Sender: TObject);
var
  LExePath : AnsiString;
begin
  LExePath := 'notepad.exe';
  ShellExecuteA(0, '', PAnsiChar(LExePath), nil, nil, SW_SHOWNORMAL);
end;


[12059] 末尾がWの関数を実行する例返信 削除
2018/7/17 (火) 06:35:46 Mr.XRAY
ものはついでと言いますから,
逆に末尾が W の関数を使用する例です.
Ansi 版の Delphi で末尾が W の ShellExecute 関数を使用する例です.
動作確認は Windows 7 U32(SP1) + Delphi 6(UP2) Pro です.
uses に ShellAPI が必要です.

implementation

uses
  ShellAPI;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  LExePath : WideString;
begin
  LExePath := 'notepad.exe';
  ShellExecuteW(0, '', PWideChar(LExePath), nil, nil, SW_SHOWNORMAL);
end;

# わずか数行のプログラムですが,変数の型や型キャストをいろいろ変えてテスト
# するといろいろなことが分かります.

こんなところも参考にしてください.
[各種文字列の実際]
https://ht-deko.com/tech018.html


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82