VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2006/05/31(Wed) 11:01
投稿者Blue
Eメール
URL
タイトルRe: Shell関数の戻り時間に差が・・・

> 「原因追求しなさい」との命令に逆らえません。
原因は Shell関数 のつくりそのものです。
Shell関数のヘルプにもありますが、
<引用>
メモ
   既定の設定では、Shell 関数はプログラムを非同期的に実行します。
   したがって、Shell 関数を使用して実行を開始したプログラムが終了しなくても、
   Shell 関数の次のステートメントは実行されます。
</引用>
と、非同期実行するとあります。Sleepしないときうまくいっていたのはたまたまなのでは?と思います。


> Shell関数以外の起動方法がある事は、知っているのですが
一番簡単な解決方法は、WScript.ShellオブジェクトのRunメソッドを使うとか。

サンプル)
Sub test1()
    Shell "calc"
    MsgBox "オワ"
End Sub

Sub test2()
    CreateObject("WScript.Shell").Run "calc", 1, True
    MsgBox "オワ"
End Sub


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -