| > Private Declare Unicode Function SHFileOperation Lib "shell32.dll" (ByRef lpFileOp As SHFILEOPSTRUCT) As Integer > > <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Ansi, Pack:=1)> _ > Private Structure SHFILEOPSTRUCT
Unicode API に、ANSI 構造体を渡しては不味いですよ。
Auto でも Unicode でも ANSI でも良いですが、いずれかに統一しないと、 呼び出し時に文字列データが壊れるなどの問題が発生してしまいます。
それと、折角書いてあった MarshalAsAttribute を取り除いてしまったのは、何故でしょうか?
最後に、先ほどと同じ >> それぞれのメンバには、具体的にはどういった値を設定しているのでしょうか。 を繰り返し書いておきます。定数宣言がどうなっているのかなども気になるので。 |