OPENFILENAME構造体

宣言文
Type OPENFILENAME
    lStructSize As Long                         構造体のサイズ
    hwndOwner As Long                           ダイアログボックスの親ウィンドウハンドル
    hInstance As Long                           テンプレートリソースを持つモジュールのインスタンスハンドル
                                                (不用のとき0)
                                                flagsにOFN_ENABLETEMPLATEを設定しているときのみ有効)
    lpstrFilter As String                       フィルタ(Visual Basicのファイルパターンのこと)
    lpstrCustomFilter As String                 カスタムフィルタ
    nMaxCustomFilter As Long                    同、バイト数
    nFilterIndex As Long                        ダイアログに優先的に表示するフィルタのインデックス
                                                lpstrFilterで指定した最初のフィルタのインデックスは1
                                                このメンバを0に設定すると、カスタムフィルタが使用される
                                                lpstrCustomFilterが設定されていないとき
                                                lpstrFilterの最初のフィルタを使用する
    lpstrFile As String                         (戻り値)フルパス名を受け取るバッファ
    nMaxFile As Long                            同、バイト数
    lpstrFileTitle As String                    (戻り値)ファイル名を受け取るバッファ
    nMaxFileTitle As Long                       同、バイト数
    lpstrInitialDir As String                   初期のディレクトリ名
    lpstrTitle As String                        ダイアログのキャプション
    flags As Long                               動作を指定
    nFileOffset As Integer                      フルパス中のファイル名までのオフセット
    nFileExtension As Integer                   同、拡張子までのオフセット
    lpstrdefext As String                       デフォルトの拡張子
    lCustData As Long                           フックプロシージャに渡すデータ
    lpfnHook As Long                            フックプロシージャへのポインタ
    lpTemplateName As String                    テンプレートリソース名
End Type

uFlagsの定数
 OFN_ALLOWMULTISELECT = &H200                   複数ファイルを選択可能にする
 OFN_CREATEPROMPT = &H2000                      指定のファイル名がないとき
                                                ファイルを作成するかどうかを問い合わせるダイアログを表示する
 OFN_HIDEREADONLY = &H4                         上書き禁止チェックボックスを表示しない
                                                (このフラッグを指定しないとき、リンク先のフルパスが戻る)
 OFN_NOREADONLYRETURN = &H8000                  読み取り専用属性のファイルと書込み禁止ディレクトリを選択したとき
                                                メッセージボックスを表示する
 OFN_READONLY = &H1                             上書き禁止チェックボックスをチェックする
 OFN_OVERWRITEPROMPT = &H2                      既存ファイル名を指定したとき、メッセージボックスを表示する
 OFN_EXTENSIONDIFFERENT = &H400                 lpstrDefExt と異なる拡張子の入力を許可する
                                                (このフラッグは lpstrDefExt が vbNullString のとき無効)
 OFN_FILEMUSTEXIST = &H1000                     指定のファイル名が存在しないとき、メッセージボックスを表示する
 OFN_NOTESTFILECREATE = &H10000                 ダイアログ終了前に、書き込み禁止属性などの
                                                チェックのためのテスト用ファイルを作成しない
 OFN_NOVALIDATE = &H100                         ファイル名の有効性をチェックしない
                                                (ただし、ファイル名が不正な場合、メッセージは表示される)
 OFN_PATHMUSTEXIST = &H800                      有効なパス名だけを受付ける
                                               (不正なファイル名が入力されたとき、メッセージを表示する。
                                                ただし、これがデフォルトの設定であるので
                                                このフラッグを指定する必要はない)
 OFN_SHOWHELP = &H10                            ヘルプボタンを表示する
 OFN_ENABLEHOOK = &H20                          lpfnHook メンバを有効にする
 OFN_ENABLESIZING = 0
 OFN_ENABLETEMPLATE = &H40                      テンプレートを使う
 OFN_ENABLETEMPLATEHANDLE = &H80                hInstance はテンプレートへのポインタを指す
 OFN_EXPLORER = &H80000                         エクスプローラ型ダイアログとして表示
 OFN_LONGNAMES = &H200000                       旧スタイルのダイアログのとき、ロングファイル名を使用可能にする
                                                (エクスプローラ型のときは常にロングファイル名が使える)
 OFN_NOCHANGEDIR = &H8                          ダイアログ終了後、元のディレクトリに戻る
 OFN_NOLONGNAMES = &H40000                      旧スタイルのダイアログのとき、ショートファイル名を使用可能にする
                                                (エクスプローラ型のときは常にロングファイル名が使える)
 OFN_NONETWORKBUTTON = &H20000                  ネットワークボタンを非表示・無効にする
 OFN_SHAREAWARE = &H4000                        ファイルを開いたときにネットワーク共有違反のため
                                                エラーが発生してもエラーを無視する
Structure OPENFILENAME
    lStructSize As Integer                         構造体のサイズ
    hwndOwner As Integer                           ダイアログボックスの親ウィンドウハンドル
    hInstance As Integer                           テンプレートリソースを持つモジュールのインスタンスハンドル
                                                (不用のとき0)
                                                flagsにOFN_ENABLETEMPLATEを設定しているときのみ有効)
    lpstrFilter As String                       フィルタ(Visual Basicのファイルパターンのこと)
    lpstrCustomFilter As String                 カスタムフィルタ
    nMaxCustomFilter As Integer                    同、バイト数
    nFilterIndex As Integer                        ダイアログに優先的に表示するフィルタのインデックス
                                                lpstrFilterで指定した最初のフィルタのインデックスは1
                                                このメンバを0に設定すると、カスタムフィルタが使用される
                                                lpstrCustomFilterが設定されていないとき
                                                lpstrFilterの最初のフィルタを使用する
    lpstrFile As String                         (戻り値)フルパス名を受け取るバッファ
    nMaxFile As Integer                            同、バイト数
    lpstrFileTitle As String                    (戻り値)ファイル名を受け取るバッファ
    nMaxFileTitle As Integer                       同、バイト数
    lpstrInitialDir As String                   初期のディレクトリ名
    lpstrTitle As String                        ダイアログのキャプション
    flags As Integer                               動作を指定
    nFileOffset As Short                      フルパス中のファイル名までのオフセット
    nFileExtension As Short                   同、拡張子までのオフセット
    lpstrdefext As String                       デフォルトの拡張子
    lCustData As Integer                           フックプロシージャに渡すデータ
    lpfnHook As Integer                            フックプロシージャへのポインタ
    lpTemplateName As String                    テンプレートリソース名
End Structure