PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
1068 98/03/27 16:12:21 RE(6):Run関数の代わりにWinExecで対処 By ryuji
1067 98/03/27 16:11:14 RE(5):WinExec() いただきました (^^) By nari
1062 98/03/27 10:35:03 RE(4):Run関数によるプログラム起動でWindowを隠せないでしょうか。 By nari
1055 98/03/26 20:20:30 RE(3):Run関数の代わりにWinExecで対処 By Taka
1053 98/03/26 19:47:09 RE(2):Win32APIでWindowを隠す By M.M
1052 98/03/26 18:50:43 RE(1):Run関数によるプログラム起動でWindowを隠せないでしょうか。 By nari
1048 98/03/26 15:21:24 Run関数によるプログラム起動でWindowを隠せないでしょうか。 By ryuji

カテゴリ:旧電子会議室
日付:1998年03月27日 10:35 発信者:nari
題名:RE(4):Run関数によるプログラム起動でWindowを隠せないでしょうか。

>Run関数によりBATファイルを起動する際にDOS窓を見せない方法を考えています。

Takaさんの指摘されている WinExec()についてちと調べたところ、
Win32では CreateProcess()の使用が推奨されていることが判りました。
でも引数の構造体定義が面倒くさそうなので、WinExec使った方が楽みたいです。(^^)

参考までにPROTOTYPEです。

BOOL CreateProcess(lpszImageName, lpszCommandLine, lpsaProcess, lpsaThread, fInheritHandles, fdwCreate, lpvEnvironment, lpszCurDir, lpsiStartInfo, lppiProcInfo)


LPCTSTR lpszImageName; /* モジュール名のアドレス*/
 LPCTSTR lpszCommandLine; /* コマンド ラインのアドレス*/
 LPSECURITY_ATTRIBUTES lpsaProcess; /* プロセスのセキュリティ属性のアドレス */
 LPSECURITY_ATTRIBUTES lpsaThread; /* スレッドのセキュリティ属性のアドレス */
 BOOL fInheritHandles; /* 新しいプロセスがハンドルを継承するか? */
 DWORD fdwCreate; /* 作成フラグ */
 LPVOID lpvEnvironment; /* 新しい環境ブロックのアドレス */
 LPCTSTR lpszCurDir; /* 現在のディレクトリ名のアドレス */
 LPSTARTUPINFO lpsiStartInfo; /* STARTUPINFOのアドレス */
 LPPROCESS_INFORMATION lppiProcInfo; /* PROCESS_INFORMATIONのアドレス */


typedef struct _STARTUPINFO { /* si */
DWORD   cb;
LPTSTR  lpReserved;
LPTSTR  lpDesktop;
LPTSTR  lpTitle;
DWORD   dwX;
DWORD   dwY;
DWORD   dwXSize;
DWORD   dwYSize;
DWORD   dwXCountChars;
DWORD   dwYCountChars;
DWORD   dwFillAttribute;
DWORD   dwFlags;
WORD    wShowWindow;  <<<< これに SW_HIDE を与える
WORD    cbReserved2;
LPBYTE  lpReserved2;
HANDLE  hStdInput;
HANDLE  hStdOutput;
HANDLE  hStdError;
} STARTUPINFO, *LPSTARTUPINFO;

面倒ですね?
Cならheader fileがあるから定義済みなんですが、PBだと自力で構造体定義しなきゃ
ならないんですよね。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.