下記のエラーメッセージがどうしても解決できません。というより、意味がわかりません。ご存知の方、どうか教えてください。
”'System.TypeLoadException' のハンドルされていない例外が XYZ.exe で発生しました。
追加情報 : 型 WIN32_FIND_DATA のフィールド ABCName をマーシャリングできません : この型は構造体フィールドとして、マーシャリングできません。”
マーシャリングってどうやってやるんですか?
先の質問への回答と、同じ事を書かせてください。
『どんなコードを書いたのでしょうか?』
それがわからない事には、コードの修正案が出せないのですが…。(^^;)
>『どんなコードを書いたのでしょうか?』
すみません。
下記のコードのところでエラーメッセージが表示されます。
LngGetHandle = FtpFindFirstFile(LngSecHandle, vbNullString, StrGetData, INTERNET_FLAG_RELOAD, 0)
※補足
FtpFindFirstFile(ハンドル(LONG),vbNullString(STRING) , WIN32_FIND_DATA(よくわかりません) , (LONG), (Integer)) as LONG
やりたい事としてはFTPでファイルを取得したいのです。
過去レスの”原材料牛乳”さんと同じような事だと思います。
教えていただいたようにAPIのところでInitialize を呼んで
WIN32_FIND_DATA(構造体) を初期化しています。
”マーシャリングできません。”ということは
できるようなやり方があるのでしょうか?
本当になにも知らないのでよろしくお願いします。
こういう時は、『状況を再現できる、最低限のコード』を提示してください。
APIの宣言部も、構造体の宣言部も、各変数のデータ型や、各変数の値も
わからないのでは、こちらで状況を確認する事ができませんので。。。(;_;)
何が原因でエラーになっているかを、ご自身できちんと把握
出来ている場合は、部分的なコードでも状況が伝わる事もありますが、
今回の質問のように、宣言が間違っているのか、呼び出し方が
間違っているのか、あるいは、それ以外の要因があるのかを
把握しきれていない時は、部分的なコードでは判断できない事があります。
大変申し訳ありません。目の前の問題で頭が混乱していました。
もう一度、原因の究明と質問の仕方を
考え直してきます。
ご理解いただけるような質問ができたときには、
よろしくお願いします。
ツイート | ![]() |