質問: new FormToMultipartPostData(webBrowser1, form); postData.SetFile("file", @"C:\Users\Shimizu\Videos\FD\a.mp4"); postData.Submit(); }); } ```
回答: スクリプト等で `input[type=file]` にローカルファイルを設定することはできません。でなければ、個人情報等を含んだファイルをユーザーの確認なしにアップロードできてしまいますよね? また、 WebBrowser クラスを通してアクセスできる HtmlElement 等は Javascript からアクセスできる DOM オブジェクトそのものです。故に、 Javascript と同程度の操作しか行えません。 質問に挙げられたサイトでも、プログラムから変更することはできないと書かれています。 > > As you probably know, for security reasons, it is not possible to change the value of the HTML form file input programmatically. > > > その上で、**`input[type=file]` を設定するのは諦めて**、そうすることなしに任意のファイルをアップロードするのが、あなたの引用されたサンプルコードです。 しいて言えば、参照ダイアログを表示させて、そのダイアログをプログラムから制御することはできるかもしれません。(私は試していません) 参考 IE8でのINPUT TYPE="FILE"フィールドに値をセットする