Forum
Merhabalar, Yapımız Üzerinde GPO Ortamında Kullanıcılar İçin Bazı Uygulamaların Versiyon Güncelleme Sonrasında DLL Dosyalarını regsvr Yapılması Gerekmektedir,
Bu Durumu Startup Script veya Schedule Task İle Yaptığımda Her Oturup Açmada vs Tekrarlandığı İçin Bazı Sorunlar Oluşturmaktadır,
Benim İstediğim Durum GPO İle Bu İşlemi Oluşturduğumda .vbs - .ps1 - .bat Gibi Dosyalarım Kullanıcıda Yalnızca 1 Defa Çalıştırılsın ve Bir Daha Çalıştırılmasın,
Bu Durumda Nasıl Bir İşlem Yapabilirim ?
bir batch ile regsvr çalıştırdıgınızda herhangi bir path de done.txt isimli bir dosya oluşturtup aynı batch içerisinde bu dosya avr ise komutu çalıştırma şeklinde bir yapı kurabilirsiniz
örnek:
@echo off
rem The first part of your code goes here
:CheckForFile
if exist "C:\Path\File.ext" goto FileExists
ping -n 300 localhost >NUL
goto :CheckForFile
:FileExists
rem The rest of your code goes here
bir batch ile regsvr çalıştırdıgınızda herhangi bir path de done.txt isimli bir dosya oluşturtup aynı batch içerisinde bu dosya avr ise komutu çalıştırma şeklinde bir yapı kurabilirsiniz
örnek:
@echo off
rem The first part of your code goes here
:CheckForFile
if exist "C:\Path\File.ext" goto FileExists
ping -n 300 localhost >NUL
goto :CheckForFile
:FileExists
rem The rest of your code goes here
Nasıl Bir İşlem Yapacağım Konusunda Bilgilendirmeniz İçin Teşekkür Ediyorum,
Ağ Üzerinde Tüm Kullanıcıların Erişebileceği Bir Alan Oluşturdum ve Boş Bir TXT Dosyası İle İsimlendirme Yaptığında Dosyanın Varlığını Sorgulama Sonrasında İşlemleri Yapabiliyorum.
regsvr32 İle DLL Dosyasını Güncelleştirmek İçin Diğer Kullanıcılara Yardımcı Olması Açısında .vbs Dosya Blogunu Paylaşıyorum.
Set WshShell = CreateObject("WScript.Shell")
Set objShell = CreateObject("WScript.Shell")
strComputerName = wshShell.ExpandEnvironmentStrings( "%COMPUTERNAME%" )
set FSO = CreateObject("Scripting.filesystemobject")
If Not FSO.FileExists("\\10.10.50.40\LGo3RegeditStatus$\"&strComputerName&"_v2.56.00.00.txt") Then
Set objStream = FSO.CreateTextFile("\\10.10.50.40\LGo3RegeditStatus$\"&strComputerName&"_v2.56.00.00.txt", _
True, TristateFalse)
With objStream
REM msgbox "Belirtilen Dosya Bulunamadi, Guncel Kayit Bilgisi Yapilmaktadir"
objShell.Run "regsvr32.exe /s /u C:\LGo3\LObjects.dll"
RC = WshShell.Run("""C:\LGo3\LObjects.exe"" /regserver /s",1,True)
objShell.Run "regsvr32.exe /s /u C:\LGo3\ActiveQuilt.dll"
objShell.Run "regsvr32.exe /s C:\LGo3\ActiveQuilt.dll"
objShell.Run "regsvr32.exe /s /u C:\LGo3\Redemption.dll"
objShell.Run "regsvr32.exe /s C:\LGo3\Redemption.dll"
objShell.Run "regsvr32.exe /s /u C:\LGo3\Redemption64.dll"
objShell.Run "regsvr32.exe /s C:\LGo3\Redemption64.dll"
objShell.Run "regsvr32.exe /s /u C:\LGo3\LBSCONNLIB.dll"
objShell.Run "regsvr32.exe /s C:\LGo3\LBSCONNLIB.dll"
objShell.Run "regsvr32.exe /s /u C:\LGo3\LOGOConnect\PRG\LDXCComApi.dll"
RC = WshShell.Run("""C:\LGo3\LOGOConnect\PRG\LDXCComApi.exe"" /regserver /s",1,True)
REM msgbox "Guncel Kayit Bilgisi Basariyla Tamamlandi"
End With
Else
REM msgbox "Belirtilen Dosya Bulunmaktadir, Islem Sonlandiriliyor"
End If