Windows güncellemeleri varmı yokmu bunu nasıl bir timerle 10 dk bir kontrol edip labele yazdırabilirim.
Bu konuda bilgisi olan varmı.
Windows güncelmi degilmi kontrol etmek.
Re: Windows güncelmi degilmi kontrol etmek.
Windows Update Agent API kullanarak bunu yapmak mümkün.
Aşağıdaki kod; bulunan güncellemeleri Memo1 içine yazar:
Bilgisayarda daha önceden yapılmış güncellemeleri listelemek istersen IsInstalled = 1 yapıp kullanırsın.
Güncellemeleri listelemeyip, sadece güncelleme var mı yok mu kontrolü yapmak istersen:
Aşağıdaki kod; bulunan güncellemeleri Memo1 içine yazar:
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
var
updateSession : OleVariant;
updateSearcher : OleVariant;
updateSearchResult : OleVariant;
updateEntry : OleVariant;
UpdateCollection : OleVariant;
oEnum : IEnumvariant;
iValue : LongWord;
begin
updateSession:= CreateOleObject('Microsoft.Update.Session');
updateSearcher := updateSession.CreateUpdateSearcher;
updateSearchResult:= updateSearcher.Search(Format('IsInstalled = 0 and Type=%s',[QuotedStr('Software')]));
UpdateCollection := updateSearchResult.Updates;
oEnum := IUnknown(UpdateCollection._NewEnum) as IEnumVariant;
while oEnum.Next(1, updateEntry, iValue) = 0 do
begin
Memo1.Lines.Add(updateEntry.Title);
updateEntry:=Unassigned;
end;
end;
Güncellemeleri listelemeyip, sadece güncelleme var mı yok mu kontrolü yapmak istersen:
Kod: Tümünü seç
function GuncellemeVarMi: boolean;
var
updateSession : OleVariant;
updateSearcher : OleVariant;
updateSearchResult : OleVariant;
begin
updateSession:= CreateOleObject('Microsoft.Update.Session');
updateSearcher := updateSession.CreateUpdateSearcher;
updateSearchResult:= updateSearcher.Search(Format('IsInstalled = 0 and Type=%s',[QuotedStr('Software')]));
Result := updateSearchResult.Updates.Count > 0;
end;
There's no place like 127.0.0.1
Re: Windows güncelmi degilmi kontrol etmek.
Güncellemeleri listelemeyip, sadece güncelleme var mı yok mu bunu labele nasıl yazdırabilirim , bu fonsiyonu kullanarak
ayrıca hata veriyor.
[Error] Unit1.pas(34): Undeclared identifier: 'IEnumvariant'
ayrıca hata veriyor.
[Error] Unit1.pas(34): Undeclared identifier: 'IEnumvariant'
Re: Windows güncelmi degilmi kontrol etmek.
dostum sadece güncelleme varmı yokmu o fonsiyonu çalıştıramadım labelde nasıl gösterecem. teşekkürler yardımın için
Re: Windows güncelmi degilmi kontrol etmek.
Kusura bakmayın ama biraz da siz gayret gösterseniz. Vakit ayırıp size burada yardımcı olmaya çalışanlara haksızlık ediyorsunuz
Size Boolean değer döndüren bir fonksiyon yazmışım (Boolean ne demek onu bildiğinizi varsayıyorum) ve bunun sonucunda bir label'a "var" yada "yok" nasıl yazdırırım diye soruyorsanız; Windows Update Agent API kullanmayı falan unutun. Öncelikle güzel bir Delphi kitabı alıp baştan sona okuyun lütfen...
Bu bağlamda biraz araştırma ile IEnumvariant ile ilgili sorunu da çözebileceğinizi düşünüyorum.
Size Boolean değer döndüren bir fonksiyon yazmışım (Boolean ne demek onu bildiğinizi varsayıyorum) ve bunun sonucunda bir label'a "var" yada "yok" nasıl yazdırırım diye soruyorsanız; Windows Update Agent API kullanmayı falan unutun. Öncelikle güzel bir Delphi kitabı alıp baştan sona okuyun lütfen...
Bu bağlamda biraz araştırma ile IEnumvariant ile ilgili sorunu da çözebileceğinizi düşünüyorum.
There's no place like 127.0.0.1
Re: Windows güncelmi degilmi kontrol etmek.
çözdüm teşekkürler saol yardımın için.