投稿者 魔界の仮面弁士  (社会人) 投稿日時 2013/5/31 23:29:20
Web サイトにファイルをアップロードする方法としては、
 (1) Web フォルダー/WebDAV (http または https での PUT メソッド)
 (2) RFC1867 (http または https での POST メソッド)
 (3) FTP (File Transfer Protocol)
 (4) SFTP (SSH File Transfer Protocol)
 (5) FTPS (File Transfer Protocol over SSL/TLS)
などが挙げられます。

他にもいろいろな手法がありますが、どの方法が使えるのかはサーバーによって異なります。

どの方法がサポートされているのかは、そのサーバーの管理者にお問い合わせください。
上記以外のアップロード方法が採用されているサーバーもあります。


1 の場合は、WebClient サービスや MSDAIPP.DSO プロバイダーを通じてアクセスします。
ここでいう WebClient とは、System.Net.WebClient クラスのことではなく、
Windows サービスの方を指しています。
MSDAIPP (Microsoft Data Access Internet Publishing Provider) の方は
OLE DB Provider の一種であり、VB からは ADODB.Record などを通じて利用できますが
バージョンによって日本語ファイル名の扱い方が異なるので注意が必要です。
これらの他、System.Net.HttpWebRequest クラスを通じて通信することもできます。


2 の場合は、御提示の My.Computer.Network.UploadFile が使えます。
あるいは、System.Net.HttpWebRequest を通じて利用することもできます。
いずれの方法を取るにしても、サーバー側には、POST でアップロードされてきた
ファイルを受け取って保存するための Web ページが必要です(Upload.aspxなど)。


3 の場合も、御提示の My.Computer.Network.UploadFile が使えます。
My.Computer.Network.UploadFile("C:\Folder01\Sample.TXT", "ftp://example.com/Folder01/Sample.TXT", user, pass)
より細かい制御(フォルダ作成など)が必要な場合は、System.Net.FtpWebRequest を使えます。
System.Net.FtpWebRequest の具体例は下記などをご覧ください。
http://dobon.net/vb/dotnet/internet/ftpwebrequest.html


4 の場合には、VB にはそのための簡単な仕組みが用意されていないため、
適当な SFTP クライアント(WinSCP など)を用意し、それを VB から
コマンドライン起動するなどして対応することになるでしょう。5 も同様です。