WindowsUpdateを自動的にダウンロードしてインストールするコードを書いています。(「tlbimped」wuapi.dllとインターネット上で見つかったいくつかのサンプルコードを使用)。
UpdateDownloader updateDownloader = Sesion.CreateUpdateDownloader();
updateDownloader.Updates = new UpdateCollection() { Item };
updateDownloader.BeginDownload(this, this, this);
そしてそれは大丈夫です-私は正常にアップデートをダウンロードしてインストールすることができます。しかし、私はアイテムをキャッシュすることを好み、このアイテムが「特別な」フォルダにすでに存在する場合はダウンロードしません。グーグルは、私が使うことができると言います:
IUpdate.CopyFromCache(path, true);
しかし、それは私にはうまくいきません:(
これがサンプルコードです
IUpdate Item { get; set; }
public UpdateSession Sesion { get; set; }
void CopyToFolder()
{
string path=Environment.CurrentDirectory + @"\Updates";
DirectoryInfo di = new DirectoryInfo(path);
if (!di.Exists) Directory.CreateDirectory(path);
Item.CopyFromCache(path, true);
}
アイテムがnullではなく、ダウンロードされます。インストールできますが、指定したパスにコピーできません。