Dosya kopyalamada Permission denied sorunu

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,607
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Hazırladığım bir çalışmada kullandığım bazı Activex kontrollerini(*.ocx), çalışmayı yüklediğim bilgisayara aktarmak için aşağıdaki kodları kullanıyorum.
Kodlar C:\Windows\System32 klasörü dışındaki klasörlere kopyalamada sorun çıkarmazken, C:\Windows\System32 klasörüne kopyalamıyor ve "Permission denied" hata mesajını alıyorum.
Sorunun Win.Vista'nın "Kullanıcı Hesabı Denetimi"nden kaynaklandığını düşünüyorum.

Bu sorunu çözmek için yardımlarınızı bekliyorum.

Kod:
Sub OCX_Kopyala()
    Set fso = CreateObject("Scripting.FileSystemObject")
      
    For Each Kaynak_Dosya In fso.GetFolder("D:\OCX").Files
        For Each Hedef_Dosya In fso.GetFolder("C:\Windows\System32").Files
            If Kaynak_Dosya.Name <> Hedef_Dosya.Name Then _
               fso.CopyFile "D:\OCX\*.*", "C:\Windows\System32"
        Next
    Next
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,007
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Tahminimce güvenlik amacıyla bu diske ulaşamıyorsunuz. Bunun için bahsettiği kullanıcı hesabı denetimlerini düşük seviyeye ayarlayıp deneyin. Eğer bu yeterli oluyorsa bu işlemi kodla yapacak yöntemleri aramak gerekiyor. Birde yönetici olarak C klasörüne kopyalama işlemi yapmayı deneyin. Eğer bu şekilde olayı aşabiliyorsanız OCX dosyalarını kopyalarken yönetici olarak işlem yapacak kodları bulmak gerekecek. Nette mutlaka bu şekilde kodlamalar mevcuttur. İhtiyaca göre işe yarayanı sizin kodlarınıza adapte edebiliriz.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,607
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Teşekkürler Sayın Ayhan,

Kullanıcı hesabı denetimlerini düşük seviyeye ayarladığımda işlem gerçekleşiyor. Bu işlemi kodla yapacak yöntemleri bulmam lazım. Nette aramada dil sorunu nedeniyle başarılı olamadım.

Saygılar.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,007
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Ben arama sonucu aşağıdaki kodları buldum;

Kod:
To Disable UAC

C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

To Enable UAC

C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 1 /f

After the command, computer needs to be restarted to the change to be effective.
Fakat bu işlem sonucunda pc yi yeniden başlatmanız gerekiyor.

Ayrıca aşağıdaki linktede farklı bir kodlama bulunuyor.

http://www.winhelponline.com/articles/185/1/VBScripts-and-UAC-elevation.html
 
Üst