SHIN
using System.Deployment.Application;
public void CheckUpdate()
{
if (ApplicationDeployment.IsNetworkDeployed)
{
ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;
// 이벤트 핸들러 등록
ad.CheckForUpdateCompleted += new CheckForUpdateCompletedEventHandler(ad_CheckForUpdateCompleted);
// 비동기 업데이트 확인 시작 (UI 멈춤 없음)
ad.CheckForDetailedUpdateAsync();
}
}
void ad_CheckForUpdateCompleted(object sender, CheckForUpdateCompletedEventArgs e)
{
if (e.Error != null)
{
// 에러 처리 (네트워크 오류 등)
MessageBox.Show("업데이트 확인 중 오류 발생: " + e.Error.Message);
return;
}
if (e.UpdateAvailable)
{
if (MessageBox.Show("새로운 버전이 있습니다. 업데이트하시겠습니까?", "업데이트", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;
ad.UpdateAsync(); // 실제 업데이트도 비동기로 진행 권장
}
}
else
{
// 최신 버전임
}
}