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

投稿日: 2003/06/04(Wed) 14:51
投稿者あおい
Eメール
URL
タイトルShellExecuteAを呼び出してはいけないのですか?

Lantern 様
花ちゃん様

お手数をおかけして申し訳ございません。
No4273のLantern 様のご教授どおりに記載すると稼動いたします。
ただ、私の初期ソース(long型の間違え修正後)ではShellExecuteAで
以下のソースのように記載しておりましたためオーバーフローエラーが発生しました。
No4265のLantern 様のコメントをよんでShellExecuteで呼び出し可能いうことが
分かりました。
そこで、私は呼び出しても可能ということは通常ではやはりShellExecuteAで呼び出すのだと
思ったのです。

下記のソースのShellExecuteAをShellExecuteにすると動きます。
ということは、ShellExecuteAで呼び出すこと間違えということなのでしょうか?
間違えの場合、2.の宣言はいらないのでしょうか??

(上記の説明の為宣言に番号を振りましたが、実際のソースにはこの番号は記載しておりません)
1.Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd   As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As      String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
2.Private Declare Function ShellExecuteA Lib "shell32.dll" (ByVal hwnd As Integer, ByVal    lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal      lpDirectory As String, ByVal nShowCmd As Integer) As Integer

Private Sub Command1_Click()
    Dim ret As Long
    ret = ShellExecuteA(Me.hwnd, "open", "test01.txt", vbNullString, "C:\", 1&)

End Sub

ShellExecuteAにこだわっているわけではないのですが、どうしてShellExecuteAで呼び出してはいけないかが
わからないんです。
理解能力が乏しくて申し訳ございません。
今一度、ご教授をお願いいたします。


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

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

- Web Forum -