作成者カテゴリ 
公開
ぞう
09/29/2000 07:46 PM
データベース
ノーツサーバノーツクライアントサーバOSクライアントOSネットワークプロトコル
4.6x4.6xWindowsNT 4.0WindowsNT 4.0TCP/IP

WindowsNT4.0でファイルを開くダイアログが表示されない

comdlg32.dllを使用して「ファイルを開く」ダイアログを表示させているのですが、クライアントのOSがWindowsNT4.0の場合にダイアログが表示されません。Win95およびWin98では正常に動作します。
ロジックは以下のとおりです。

' *** Win32 APIの定義
Type OPENFILENAME
lStructSize As Long '構造体のサイズ(バイト)
hwndOwner As Long '呼び出し元ウィンドウハンドル
hInstance As Long 'フィルタキャプションとパターン
lpstrFilter As String '?? VBNULLSTRING
lpstrCustomFilter As String '?? NULL
nMaxCustFilter As Long '?? NULL
nFilterIndex As Long '?? NULL
lpstrFile As String 'ここにフルパスのファイル名が返る
nMaxFile As Long 'lpstrFile のサイズを指定する
lpstrFileTitle As String '?? NUll
nMaxFileTitle As Long '?? NUll
lpstrInitialDir As String 'ディレクトリの指定 NULLならカレントディレクトリ
lpstrTitle As String 'ダイアログボックスのタイトル
flags As Long '上記の定数を OR 演算子で組み合わせて指定する
nFileOffset As Integer 'パスの先頭から拡張子を含まないファイル名までの位置を返す
nFileExtension As Integer 'パスの先頭から拡張子を含むファイル名までの位置を返す
lpstrDefExt As String 'ユーザーが拡張子を入力しなかった場合に付加される拡張子3文字
lCustData As Long '?? NULL
lpfnHook As Long '?? NULL
lpTemplateName As String '?? VBNULLSTRING
End Type

Declare Function GetActiveWindow& Lib "User32" ()
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" ( pOpenfilename As OPENFILENAME ) As Long
Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (Byval nBufferLength As Long, Byval lpBuffer As String) As Long



'ファイルを開くダイアログを表示して場所を指定させる
FileName = "mfenames.nsf"
stOpenFileName.hwndOwner = GetActiveWindow()
stOpenFileName.lpstrFilter ="その他のファイル"
stOpenFileName. lpstrFile = FileName & String$(256, Chr$(0))
stOpenFileName.nMaxFile = 256
stOpenFileName. lpstrFileTitle = String$(256, Chr$(0))
stOpenFileName.nMaxFileTitle = 256
stOpenFileName.lpstrInitialDir = FileDir
stOpenFileName.lpstrTitle = "ファイル選択" & Chr$(0)
stOpenFileName.flags = &H4
stOpenFileName.lStructSize = Lenb(stOpenFileName)
stOpenFileName.lpstrCustomFilter = ""
lRetVal = GetOpenFileName(stOpenFileName)


何かよいアドバイスをお願いします。


[Previous Main Document]
WindowsNT4.0でファイルを開くダイアログが表示されない (ぞう) * 現在地 *
. . 助けてください (金魚のふん)
. . . . こそくな手段ですが… (府民)
. . . . . . うまくいかないかも・・・ (てふ)
[Next Main Document]