|
こんにちは、YU-TANG です。
> Access初心者なので、動作の保障がないものを使用するのは
> ちょっと気が引けています。。。
API を意味が分からないままコピペで使うほうがよほど危険な気が
しますが…。
WizHook は Access の内部クラスですから、Office のバージョン
アップに伴って MS がメンテナンスしています。ですから
WizHook.GetFileName は Unicode に対応していますし、今後の
新しい OS 上でも (Office がそれをサポートするのであれば)
問題なく動作するようメンテされることが期待できます。
一方で、yoko さんがお使いの API は ANSI 版の方ですよね。
cp932 にマッピングされない Unicode 文字がファイル名に混入した
場合の対応は、yoko さんが行わなければ他の誰も行ってくれません。
これも一種のリスクに値するのではないかと思いますが、いかが
でしょうか。
> 上記コード内の「OPENFILENAME」にて設定ができないものか
> 調べてみましたが、分かりませんでした…。
どこで何を調べましたか?
MSDN で MS の公式な解説は確認済みでしょうか?
GetOpenFileName 関数
ht tp://msdn.microsoft.com/ja-jp/library/cc364716.aspx
OPENFILENAME Structure ()
ht tp://msdn.microsoft.com/en-us/library/ms646839(VS.85).aspx
非公式の解説は山のようにあります。そちらも確認済みですか?
一例。
OPENFILENAME構造体
ht tp://hp.vector.co.jp/authors/VA023539/tips/dialog/004.htm
上記はすべて「msdn GetOpenFileName」で Google 検索すると、
最初の 1 ページ目に出てくるものです (というか、1 位と 2 位を
拾っただけ)。
で、それを読むと「hwndOwner」の指定がちゃんとされているのかが
最初の確認ポイントになることが分かると思うのですが、指定は
どうなっていますか。
それから、宣言だけ書かれても、実行コードの提示が無いとほとんど
意味がありません。「文字列変換がうまくいかないのですが、何が
いけないのでしょうか」という質問で「Dim s As String」しか書いて
いないのと一緒です。問題点を指摘しようがないので、できれば
実行コードも提示してください。
# 老婆心ながら、メールアドレスは非表示に修正した方がいいです。
# スパムが殺到しますよ。
それでは。
|
|