ShellExecute, Windows 7 64bit'teki Notepad ++ için başarısız oldu (2)


98

Windows 7 Hatası: Bu komut doğru mu?

ShellExecute failed (2): Is this command correct? "C:\Program Files (x86)\Notepad++\notepad++.exe [location of file to edit]

Bir sorunum var gibi görünüyor RIGHT CLICK > Edit with Notepad ++. Bu, Microsoft Windows 7 Professional 64-Bit'in yeni bir yüklemesindedir.

Bu hatayla ilgili herhangi bir bildirim bulamıyorum? Yoksa bu sadece bazı Windows 7 yapılandırma sorunu mu?


4
Notepad ++ benim Win 7 x64'ümde iyi çalışıyor. Yeniden deneyin
Sathyajith Bhat

X86 program dosyaları dizini yerine Program Dosyalarına yükleme girişiminde bulundum, bu sorunu çözmedi. Sorun, kabuk uzantısının yönetici erişimine sahip olmayan bir DLL dosyasından çalıştırılması olduğunu düşünüyorum. NppShell_04.dll olduğuna inanıyorum, bu nedenle Windows 7'nin bu yönetici erişimini nasıl vereceğini anlatırsak altın oluruz.
Steve

-1 başlıktaki hatadan bir anahtar kelime eklemelisiniz, o zaman insanlar
tıklamadan

Yanıtlar:


3

Windows 7 64 Bit var ve farklı Windows 7 64 Bit kurulumunda bir yıldan fazla bir süre Notepad ++ ile çalışıyorum ve böyle bir hata görmedim. Tamamen kaldırmayı denediniz, CCleaner'ı çalıştırın ve Notepad ++ programını yeniden kurmayı denediniz mi?


7
CCleaner burada önemli bir fark yaratmayacak. Yeniden yükleme olsa da düzeltmeli.
Billy ONeal

Yeniden yüklemeyi denedim, komik olan bu. Sorunun ne olduğundan emin değilim, bir kaldırma işlemini deneyeceğim, kayıt defteri girdilerini kontrol edip yeniden tam bir yükleme yapacağım.
Jakub

2
Kaldırma yöntemini denedim ve tüm Notepad++referansların kayıtlarını tamamen temizledim . Yeni bir yeniden yükleme çalıştı. Garip ...
Jakub

1
Bu gerçekten kötü bir cevap. En iyi ihtimalle bir yorum olmalı.
Brian Webster,

178

Notepad ++, Windows 7'de yönetici olarak çalışacak şekilde ayarlamanıza neden olur.

Kayıt defterinize yönetici olarak gidin ve notepad ++. Exe dosyasını arayın. Altında (veya belki ) HKEY_CLASSES_ROOTgirişi olan anahtarı bulun ve tüm anahtarı silin. Sağ tıklayın ve artık bu seçeneğiniz olmadığını görmelisiniz.Edit with Notepad++Edit with &Notepad++

Şimdi yeniden yaratıyoruz:

  1. Git:

    HKEY_CLASSES_ROOT\*\shell
    
  2. Adı verilen kabuk altında yeni bir anahtar oluşturun OpenWithNotepadve altında adı verilen bir alt anahtar oluşturun command.

  3. Gelen OpenWithNotepadanahtarın varsayılan dize bağlam menü öğesi çağrılacak istiyoruz. Ayarladım Open with Notepad++.

  4. Yine de OpenWithNotepadanahtarı olarak adlandırılan yeni bir dize değeri oluşturun iconve değerini ayarlamak path-to-notepad++.exenerede yol-not defteri ++. Exe tam yol, örneğin olmalıdır C:\Program Files\Notepad++\notepad++.exe.

  5. Altında commandanahtar düzenlemek varsayılan dize değeri ve bunu değiştirmek "path-to-notepad++.exe" "%1"nereye yol-not defteri ++. Exe tam yol, örneğin olmalıdır C:\Program Files\Notepad++\notepad++.exe.

Bu seçeneğe sağ tıkladığınızda, artık sizden bir dosyaya Notepad ++ admin erişimi vermek için doğru şekilde sormanız gerekir.

Notepad ++. Exe özelliklerine gitmeniz ve yönetici olarak çalışacak şekilde ayarlamanız gerekir.


2
Bu, başarılı bir şekilde Notepad ++ ile "Yönetici olarak aç" seçeneğini kullanmama izin veren tek cevap.
Allbite

4
Windows8'de de benim için mükemmel çalıştı. Teşekkürler.
LDJ

9
Benim kayıt girişim "Edit & Notepad ++" idi
Greg Woods

1
Ayrıca, bunu UAC uyarılarını kapatmak için bir yöntemle nasıl birleştirebiliriz? Bulduğum her şey kısayolları kullanır; ancak bu kayıt defteri düzeltmesi doğrudan yürütülebilir dosyayı gösterir. Dürüst olalım çünkü, 10 dosyada "Notepad ++ ile Düzenle" yi sağ tıklamak ve ardından her şeyi geçici bir klasöre kaydetmek ve ardından Notepad ++ 'ı çalıştırmadan gerekli olduğu gibi hedefine taşımaktan 10 UAC istemiyle uğraşmak neredeyse daha kötü yönetici.
Ariane

1
@John Swaringen'in cevabı bu manuel işlemlerden çok daha kolay ve benim için çalıştı.
Beytan Kurt

55

Bu, herkese yardımcı olabilecek bir kayıt defteri dosyasıdır:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]
@="Edit with &Notepad++"
"icon"="C:\\Program Files (x86)\\Notepad++\\Notepad++.exe"

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]
@="\"C:\\Program Files (x86)\\Notepad++\\Notepad++.exe\" \"%1\""

Not Defteri'ne kopyalayın ve bir .reg uzantısı ile kaydedin. Not Defteri'ni kapatın ve dosyayı çift tıklatın.


2
İlk satırı da kopyaladığınızdan emin olun.
CrnaStena

Bu benim için Win8 x64'te çalıştı. Yine de bana bir kopya verdi, bu yüzden önce Notepad ++ 'ı yeniden kurmak zorunda kaldım ve yükleyicideki İçerik Menüsü seçeneğini devre dışı bıraktım. Teşekkürler.
Aske B.

Bana teşekkür ederim! Bence bir dosya "NppShell_06.dll" Windows sürümleri veya diğer işletim sistemi için hata olduğunu.
KingRider

Win10 x64
Harlandraka'da

Satır 3, @ = "& Notepad ++ ile Düzenleme (Yönetici olarak)" olmalıdır?
PatatesÇiftçi

27

Windows 7 makinemde (32 bit) notepad ++ 'ı yönetici olarak çalışacak şekilde ayarladım, böylece explorer kabuk uzantısının "Shell Execute fail" hatasıyla çalışmayı durdurmasına neden oldu. Bu ayarın devre dışı bırakılması (sağ tıklama, özellikler, uyumluluk ...) sorunu çözdü. Belki de problemlerine neden olan budur? (Şimdi tek ihtiyacım olan bir "Notepad ++ Yönetici Olarak Düzenle" kabuk uzantısıdır ....)


Bu benim için sorunu çözdü.
AaronLS

1
Bu da benim için çalıştı. Windows 7 nihai 64bit kullanıyordum.
TryHarder

1
Notepad ++ 'u görev çubuğuna sabitlediğimde ve Shift +' ı işaretlerken de aynı şey oldu - Sağ - - Özellikler -> Uyumluluk -> Bu programı yönetici olarak çalıştırın. Kısayolu -> Gelişmiş -> Yönetici Olarak Çalıştır seçeneğinin işaretini kaldırın ve seçin.
Çok

14

Son zamanlarda Notepad ++ 'ı yükselttim ve "Notepad ++' da düzenle" bağlam menüsü özelliğini kullanmaya çalışırken bu "ShellExecute başarısız oldu" hatasını almaya başladım.

Çevrimiçi olarak bu hatanın birçok raporunu bulmama rağmen, gördüğüm çözümlerin hiçbiri makinemde işe yaramadı.

Sorunu çözmek için kullandığım adımlar:

  1. Notepad ++. Exe dosyasını sağ tıklatın, Notepad ++ program klasöründe.
  2. Özellikler menü öğesini seçin.
  3. Uyumluluk sekmesini seçin.
  4. “Bu programı yönetici olarak çalıştır” yalnızca geçerli kullanıcı için etkinleştirildiğinde, onay kutusunu tıklatarak devre dışı bırakabilirsiniz.
  5. Aksi takdirde, "Bu programı yönetici olarak çalıştır" tüm kullanıcılar için etkindir ve önce "Tüm kullanıcılar için ayarları değiştir" seçeneğini tıklamanız gerekir, ardından seçeneği devre dışı bırakabilirsiniz.

Bu senaryoların her biri için bir resim oluşturdum ve aşağıya ekledim.

Her iki görüntüde de "Bu programı yönetici olarak çalıştır" seçeneğini ve seçeneğin tüm kullanıcılar için etkinleştirildiği senaryo için "Tüm kullanıcılar için ayarları değiştir" düğmesini yeşil renkle vurguladım.

RunAsAdmin CurrentUser Senaryosu RunAsAdmin AllUsers Senaryosu


Çok teşekkürler Jeff. Bu düzeltti. Registry ile oynamadan önce bir şans verin. Bu işe yaramazsa, Kayıt Defteri sabitlemeye geçin.
RuntimeException

4

Kaldır, temiz kayıt defteri ve yeniden yükleme benim için işe yaramadı. Ben de sorunum olamazdı diye uyumluluk modunda çalışıyordum.

Benim için mesele, uyumluluk sekmesindeki "Bu programı yönetici olarak çalıştır" seçeneğini işaretlememdir. Örneğin hosts dosyasını kaydedebilmek için bu seçeneği açmıştım. Bu işareti kaldırdıktan sonra nihayet NotePad ++ kullanarak dosyaları sağ tıklayıp düzenleyebilirim.


Bu kolay bir düzeltme oldu. Regedit yoluna başladı ve ugh gitti. Bunu denedim, tamamen işe yaradı.
jcollum

3

Bu Swaringen en @John eklediği yazı Yönetici menü öğesi için ek tanımlayıcı ile yukarıda. Bu değişiklikleri uygulamadan önce, N ++ 'nin gerçekten de kurulu olduğunu tespit etmek önemlidir C:\Program Files (x86)\Notepad++. Değilse, doğru kurulum yolunun aşağıdaki snippet (ler) in uygun bölümünde onunla değiştirilmesi gerekecektir.

Şovda, sürücüde bunlara bağlantı içeren üç dosya var ya da kodu .reg uzantılı bir metin dosyasına kopyalayın:

İlki , yalnızca Yönetici menüsü öğesi içindir:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]
@="Edit with &N++ [Admin]"
"icon"="C:\\Program Files (x86)\\Notepad++\\Notepad++.exe"

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]
@="\"C:\\Program Files (x86)\\Notepad++\\Notepad++.exe\" \"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{B298D29A-A6ED-11DE-BA8C-A68E55D89593}\Settings]
"ShowIcon"=dword:00000000

İkincisi , menüdeki her iki öğe için:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]
@="Edit with &N++ [Admin]"
"icon"="C:\\Program Files (x86)\\Notepad++\\Notepad++.exe"

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]
@="\"C:\\Program Files (x86)\\Notepad++\\Notepad++.exe\" \"%1\""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{B298D29A-A6ED-11DE-BA8C-A68E55D89593}\Settings]
"ShowIcon"=dword:00000001

Üçüncüsü , Yönetici öğesini tamamen kaldırmaktır:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]
"icon"=-

[HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]
@=""

[-HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad\Command]

[-HKEY_CLASSES_ROOT\*\shell\OpenWithNotepad]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{B298D29A-A6ED-11DE-BA8C-A68E55D89593}\Settings]
"ShowIcon"=dword:00000001

1

Henüz düzelmediysen, aynı sorunu yaşadım ve her şeyi denedim. Notepad ++ 'a uyumluluk modunda başlamalarını söyledim ve bu hatayı aldım. Kapattıktan sonra her şey normale döndü.


1

Benim durumumda yardımcı olan, "Program Files (x86)" yerine Notepad ++ 'nın "Program Files" dizinine yüklenmesidi. Yol sadece berbat :)

Umarım yardımcı olur!


1

Dosyaları Explorer Gezgini Arabirimi üzerinden açmak / düzenlemek konusunda Notepad ++ (5.9'da) ile ilgili sürekli sorun yaşadım (hem açmak için doğrudan tıklayın, hem de düzenlemek için sağ tıklayın ... vb.). Benim için çözüm, Notepad ++ 'u C: \ Program Tools \ Notepad ++ \' da kurmak oldu - "resmi" yükleme konumlarından herhangi birini denersem Notepad ++, yalnızca yönetici modunda çalıştırıldığında (eşeklerde bir UAC ağrısı olması durumunda) doğru şeyler açar. Fransızcamı affedersin)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.