GÜNCELLEME Kaba ve beceriksiz bir yöntem buldu, ama işe yarıyor!
Bunu paint.bat
PATH'de, C: \ Windows gibi tüm kullanıcılar tarafından bulunacağı bir yerde kaydedin :
@start /b "Paint" "c:\Program Files\Paint.NET\PaintDotNet.exe" %2
Bunu farklı kaydedin replace_mspaint_with_paintdotnet.reg
ve Windows Gezgini ile çift tıklatarak kayıt defterine birleştirin (yönetici ayrıcalıkları gerektirir):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\mspaint.exe]
"Debugger"="paint.bat"
Şimdi her zamanki görüntü dosyası türlerinde Bağlam Düzenle menüsünü kullanmak MS Paint yerine PaintDotNet kullanacaktır.
Cesur ayrıntıları seven tip değilseniz, şimdi okumayı bırakın.
Her iki @ Psycogeek'in cevaplarında listelenen yardımcı programlar arasında sinir bozucu bir şekilde tam bir çözüme yaklaştım, ancak yeterince yakın değilim. Başka birinin eksik parçayı sağlayabilmesi için kısmi çareyi buraya gönderiyorum.
autoruns
Görüntü hijacks onların MS eşdeğer olması bahane ediyoruz sekme gösterileri programları, bu yöntem kullanılarak popüler örnekleridir Notepad2 Notepad yerine ve Process Explorer Görev Yöneticisi yerine.
Notepad2'nin söylediği gibi, kaçırmalardan birine 2 kere tıklandığında Regedit'te ilgili giriş açılır. Bu anahtarı diske verdim ve not defteri girdilerini paindotnet girişlerine değiştirdim.
Bu değişen .reg dosyasını birleştirdim, Otomatik Çalıştırmaları yeniledim ve yeterince yeni mspaint girdisi var.
Bu noktada mspaint'e gitmek için kullanılan çağrılar artık PaintDotNet.exe, yay! Örneğin:
- Başlat> Çalıştır> mspaint
mspaint
komut kabuğunda
- Windows Gezgini'nde bir foobar.jpg seçin ve İçeriği düzenle menüsünü kullanın
C:\Windows\system32\mspaint.exe
herhangi bir yerden
Ne yazık ki, her çağrıda Paintdotnet diyor ki görüntü türü tanınmıyor ve açılamıyor. :( :(
Komut satırı kabuğundaki bazı testler, PdN'ye boş tırnaklar ileterek aynı hatayı aldığımı ortaya koyuyor.
C:\> "C:\Program Files\Paint.NET\PaintDotNet.exe" " "
Bence nedense PdN onu görmeden önce hedef dosyanın yolu karışıyor. PdN'nin gerçekte ne aldığını nasıl anlayacağımı bulamadım ve bu nedenle belki de son çareyi tasarladım.
İşte replace_mspaint_with_paintdotnet.reg
PDN ile MSPAINT.EXE değiştirir ve yukarıdaki hatayı kopyalayan:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\mspaint.exe]
"Debugger"="\"C:\\Program Files\\Paint.NET\\PaintDotNet.exe\""
paint.bat
Toplu iş dosyasını başlatmak için kullanılan komut satırını yakalamak için bu hata ayıklamayı kullanın %TEMP%
:
@echo %* > "%temp%\%~nx0.txt"
@start /b "Paint" "c:\Program Files\Paint.NET\PaintDotNet.exe" %2
Gibi bir çizgi eklemek notepad %*
, görüntünün tanınmadığı hatasını ortaya çıkarır, çünkü ilk yöntemde PdN gerçek c: \ windows \ system32 \ mspaint.exe dosyasını bir görüntü olarak yüklemeye çalışıyor ve başka hiçbir parametre görmüyor. Nedenler %2
yerine %1
toplu iş dosyasında normal yerine kullanarak anlamıyorum , ama doğrudan PdN çağrıldığında değil.
Whew! Bu zor bir işti. Bir toplu iş dosyasına olan ihtiyacı atlayan kludgy olmayan çözümler çok takdir edilecektir. :)