Aklımda Kalası Kelimeler

* давайте работать вместе
* Zarf ve Mazruf, Zerafet(xHoyratlık) ile aynı kökten(za-ra-fe) gelir
* Bedesten
* Suç subuta ermiştir - Suç sabit olmuştur
Copy Local etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Copy Local etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

9 Eylül 2014 Salı

Powershell ile dosya kopyalama

Niyetim SAP nin xml olarak attığı uzak sunucu dosyalarını iis sunucusuna almak
Powershell dosyası şöyle:

$source =  "C:\Temp\"
$dest = "C:\Temp\Dest\"
$kopyalanacakDosyalar = "*.xml"

Write-Host  "Kaynak Dizin => " $source
Write-Host  "Hedef Dizin => " $dest
Write-Host  "Kopyalanacak Dosyalar => " $kopyalanacakDosyalar

$TestPath = Test-Path $dest
IF (!$TestPath) {
 
 Write-Host "Hedef dizin mevcut degil"
 Copy-Item $source $dest -Verbose
 PC1 - no file found. Copying

} ELSE {

 Write-Host "Hedef mevcut dosyalar taranarak hedefte olmayan kopyalanacak"
 
 $files = (Get-ChildItem $source -recurse -filter $kopyalanacakDosyalar | where-object {-not ($_.PSIsContainer) -AND $_.lastwritetime -gt (get-date).addminutes(-10)});
 
 $files|foreach($_){
  if (!([system.io.file]::Exists($dest+$_.name))){
            cp $_.Fullname ($dest+$_.name)
  };
 }
}

4 Ağustos 2011 Perşembe

Ne zaman local'e bir assembly kopyalanmaz

Soru yukarıdaki gibi cevap:

  1. Aynı versiyonda dll'imiz GAC'da varsa yerel bin klasörüne kopyalamaz
  2. Ya da referans verip dll'in özelliklerinden "Copy Local" 'e "False" değeri verirsek


Denemek için versiyonu 1.0.0.0 bir sınıfı(örneğin personel adındaki projenizi) DLL'e çevirin (personel.dll olsun) ve GAC'a yükleyin (c:\>gacutil.exe /i c:\temp\deneme\bin\deneme.dll).
GAC işlemleri için şu makalemi okuyabilirsiniz.

Sonra bu deneme.dll'ini GAC'dan değil, projenin klasöründen başka bir projeye (örneğin hastaneOtomasyonu'na) referans olarak verin ve son projenizi derleyin.

Göreceksiniz, GAC'ta version 1.0.0.0 olduğu için HastaneOtomasyonu projesinin bin klasöründe deneme.dll'i göremeyeceksiniz.

Hadi personel.dll için versiyonu 2.0.0.0 yapın ve derleyin ama GAC'a yüklemeyin. Şimdi HastaneOtomasyonu projesini derlediğinizde DLL hatası verecektir.