Jump to content

Katılımsız Kurulumda Reg Kaydı Ekleme


 Share

Recommended Posts

Hayırlı Ramazanlar ve İyi Sahurlar hepimize.

Arkadaşlar ben innosetup kullanarak winrarı katılımsız yükleme yaptırıyorum. Ki tamamen başardım denilebilir. Fakat ufak bir pürüz var.

winrar sisteme hangi reg kaydını eklemişse bende o reg kayıtlarını buldum. Ve İstool ile ekledim. Sorun burada işte.

Örneğin winrarın tema dizini şu:

C:\Users\Kullanıcı adı\AppData\Roaming\WinRAR

Ve aldığım reg kayıtları da bu dizini gösteriyor.

Ben bu reg kaydını nasıl değiştirisem

Her bilgisayara bu reg kayıtları sorunsuz yüklenir ve winrar doğru yüklenmiş olur.

Net bir örnek vermek gerekirse

@="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\yagmur\\zip.ico"

içerikli kayıt kısmını nasıl değiştirisem kullanıcı ismi farklı olan bir bilgisayara da sorunsuz yüklenir? Farklı bilgisayara yükleyip de bir zip dosyasına sağ tıkladığımda zip simgesi görünmüyor.

Kısacası

C:\Users\Kullanıcı adı\AppData\Roaming

her kullanıcıda farklı olan kısmını nasıl evrensel yapabilirim. İlginiz ve yardımlarınız için şimdiden teşekkür ederim.

Not: Lütfen istediğim dışında başka önerilerde bulunmayınız

  • Like 1
Link to comment
Share on other sites

Pisilinux, benim istediğim bu değil. Ben reg kayıtlarını kullanıcı isminden bağımsız olarak nasıl düzenlerim onu sordum. Ben winrarı kendi kurulum dosyasıyla yüklemiyorum.

Yüklenmiş bir winrarın sistemde yaptığı değişiklikleri bulup bunu inno setupa ekliyorum. Bu durum hem kayıt defteri ayarlarını ve hem de yüklenen dosya ve klasörleri de kapsıyor.

İşte reg kaydı ayarlarında örnekte belirtiğim kısmı nasıll değiştirisem farklı bir isimde kullanıcısı olan bir bilgisayara da katılımsız yaptığım winrar sorunsuz kurulur ve sorunsuz çalışır.

@="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\yagmur\\zip.ico"

kalın yazan kısmı öyle bir değiştirmeliyim ki kullanıcı adı Ali de olsa Veli de olsa sisteme sorunsuz biçimde bu reg kaydını girecek. Saygılarımla

Link to comment
Share on other sites

köylü'm tam reg kaydı aşağıdadır.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\WinRAR\Interface\Themes]
"ShellExtBMP"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\RarSmall.bmp"
"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\Rar.ico"
"ActivePath"="yagmur"

forjest aynı durum roaming klasöründe değilde aşağıdaki klasörlerde olursa nasıl yaparım?

"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

değilde

"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Local\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

olursa reg kaydında bu dizin yolunu nasıl gösteririm? 

Link to comment
Share on other sites

  • Editor

"ShellExtIcon"="%USERPROFILE%\\AppData\\Local\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\WinRAR\Interface\Themes]
"ShellExtBMP"=hex(2):25,00,55,00,53,00,45,00,52,00,50,00,52,00,4f,00,46,00,49,\
  00,4c,00,45,00,25,00,5c,00,41,00,70,00,70,00,44,00,61,00,74,00,61,00,5c,00,\
  52,00,6f,00,61,00,6d,00,69,00,6e,00,67,00,5c,00,57,00,69,00,6e,00,52,00,41,\
  00,52,00,5c,00,54,00,68,00,65,00,6d,00,65,00,73,00,5c,00,79,00,61,00,67,00,\
  6d,00,75,00,72,00,5c,00,52,00,61,00,72,00,53,00,6d,00,61,00,6c,00,6c,00,2e,\
  00,62,00,6d,00,70,00,00,00
"ShellExtIcon"=hex(2):25,00,55,00,53,00,45,00,52,00,50,00,52,00,4f,00,46,00,49,\
  00,4c,00,45,00,25,00,5c,00,41,00,70,00,70,00,44,00,61,00,74,00,61,00,5c,00,\
  52,00,6f,00,61,00,6d,00,69,00,6e,00,67,00,5c,00,57,00,69,00,6e,00,52,00,41,\
  00,52,00,5c,00,54,00,68,00,65,00,6d,00,65,00,73,00,5c,00,79,00,61,00,67,00,\
  6d,00,75,00,72,00,5c,00,52,00,61,00,72,00,2e,00,69,00,63,00,6f,00,00,00
"ActivePath"="yagmur"

Bmp ve ico üst posttaki verdiiniz isim ve yola göre hazırlanmıştır rarsmall.bmp ve rar.ico

Edited by köylü
Link to comment
Share on other sites

2 saat önce, YAGMURADAM yazdı:

köylü'm tam reg kaydı aşağıdadır.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\WinRAR\Interface\Themes]
"ShellExtBMP"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\RarSmall.bmp"
"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\Rar.ico"
"ActivePath"="yagmur"

forjest aynı durum roaming klasöründe değilde aşağıdaki klasörlerde olursa nasıl yaparım?

"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

değilde

"ShellExtIcon"="C:\\Users\\Kullanıcı adı\\AppData\\Local\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

olursa reg kaydında bu dizin yolunu nasıl gösteririm? 

"ShellExtIcon"="C:\\Users\\%UserName%\\AppData\\Roaming\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

şeklinde düzenlemelisin. yada daha kısa yolu

"ShellExtIcon"="%AppData%\\WinRAR\\Themes\\YAGMUR\\Rar.ico"

  • Like 1
Link to comment
Share on other sites

forjest harikasınız. Verdiğiniz kod işe yaradı. Ama şu kod işe yaramadı.

@="%USERPROFILE%\\%APPDATA%\\WinRAR\\Themes\\yagmur\\zip.ico"

Bunu eklediğim zaman sağ tuşta belirtilen simge görünmedi.

Ama alttakini deneyince işe yaradı.

@="%USERPROFILE%\\AppData\\Roaming\\WinRAR\\Themes\\yagmur\\zip.ico"

Son bir sorum var.Bilirsiniz sağ tuşa yerleşmiş bir uygulamayı kendi uninstall dosyasıyla kaldırmak isteseniz bile bazı dosyalar silinemez. Çünkü windows gezgini windows explorer.exe tarafından kullanılmaktadır. Benim çalışmamda şöyle bir sistem var.İnno setup kodlarında

1.[UninstallRun]
Filename: {pf}\WinRAR\\Sil.exe; Flags: runhidden

ile ben önce winrarın oluşturduğu tüm reg kayıtlarını siliyorum. Ve orjinal hale çeviriyorum.(reg kayıtlarını önce au3 koduna sonra bu au3 kodunu exe olarak çevirerek yaptım)

2. adımda winraın oluşturduğu tüm dosya ve klasörleri siler.

3. adımda winrarı kaldıran unin000.exe dosyası ve ilgili dat dosyası silinir. Kısaca hiçbirşey kalmaz.

Ama bu işlem için önce winrarı sağ tuştan kaldırmam gerekiyor. Bu komutları sağ tuşa veren reg kayıtları sil.exe tarafından siliniyor.

İşte sil.exe den sonra eğer windows explorer.exe uygulamasını gizli olarak kapatıp açabilirsem winrarı sağ tuştan hiç kaldırmaya uğraşmadan temiz bir şekilde kaldırabilirim.

Ben innosetupa hangi kodu koyarsam windows gezgini olan windows.explorer.exe yi gizlice kapatıp geri açar.

Kısaca kaldırma mekanizması şöyle işleyecek

1. Reg kayıtlarını kaldırmak için Sil.exe çalışacak.

2. Windows explorer.exe gizlice kapanıp açılacak

3. Winrarın tüm dosya ve klasörleri slinip işlem tamamlanacak. Saygılarımla

 

  • Like 1
Link to comment
Share on other sites

23 dakika önce, YAGMURADAM yazdı:

forjest kurulum paketini hazırlama aşamasında koda hata verdi.

Unrecognized paramater name... hatası veriyor. Bilgilerinize. Saygılarımla

Ancak innosetup için değilde genel olarak bat dosyasına eklenerek inno'dan gösterilip,sıralı çalıştırma ile olabileceği düşünülerek ekledim saygılarımla.

Link to comment
Share on other sites

inno setupta exploreri kapatma komutu aşağıdaki gibidir.

Filename: {sys}\taskkill.exe; Parameters: "/f /im Explorer.exe"; Flags: skipifdoesntexist runhidden

Ben tekrar başlatmasını bulamadım. Bilen varsa kodu verirse sevinirim. Saygılarımla

Link to comment
Share on other sites

  • Editor

If ProcessExists("explorer.exe") Then
    ShellExecute("taskkill", "/f /IM explorer.exe")
EndIf
ProcessWaitClose("explorer.exe")
ShellExecute("Sil.exe", "", "C:\Program Files\Winrar\")
ProcessWaitClose("Sil.exe")
Run("C:\Windows\explorer.exe")

 

  • Like 1
Link to comment
Share on other sites

köylüm ben sil.exe içine şunları yerleştiriyorum.

1. winrarın kurulum srasında eklediği reg kayıtlarını silme ([-HKEY şekilde düzenlenmiş)

2. Run("explorer.exe",Call(ProcessClose("explorer.exe")))

kodunu ekliyorum.

Ben istiyorum ki sil.exe olmadan sorunsuz kaldırılsın.

Bunun için inno setupa winrarın eklediği reg kayıtlarını silme kodunu ekledim. Ama sanki hepsini silmedi. Öyle hatırlıyorum.

2. Reg kayıtlarını sildikten sonra winrarın explorer ile olan bağlantısını kesmek için exploreri yeniden başlatmak gerekiyor ama ben sadece kapatma kodunu bulabildim.

Şu an sil.exe ileli winrarı kuruyorum. Sağ tuşta etkin olsa dahi unins000.exe yi çalıştırdığımda sistemden tamamen kalkar. Girdiği tüm reg kayıtları silinir. Ve değiştirdiği reg kaydı geri yüklenir(zip dosyası için). 

Sizin verdiğiniz kod autoit ile ilgili galiba, bana inno setupta windows exploreri yeniden başlatma kodu lazım. Saygılarımla

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...