2010-12-17 14 views
7

Belki de bunu Superuser üzerinde sormalıyım, fakat burada başka birçok Emacs sorusu var, bu yüzden şansımı denediğimi düşündüm.Windows'ta emaclarda yönetici kullanıcıya nasıl geçebilirim?

Kullanıcı Erişim Denetimi etkinken Windows 7'de GNU Emacs 23.2.1 kullanıyorum.

Emacs'de bazı yönetici dosyalarında değişiklik yapmak istiyorum (ör. Hosts dosyası). Ancak, dosyayı kaydetmeye çalışırken, dosyaya yazma iznim olmadığını belirten bir uyarı alıyorum.

Bu dosyaları düzenlemek için Emacs'i yönetici kullanıcıya iletmek için bir yol var mı?

cevap

3

Her zaman yenilgiyi kabul edebilir ve emacs oturumunu yükseltilmiş ayrıcalıklarla çalıştırabilirsiniz. Bunu yapmanın bir çok yolu var ve this page, bunları yönetici olarak otomatik olarak çalışan şeyler de dahil olmak üzere listeler.

Bu muhtemelen tam olarak ne istediğinizi değil. Aksi halde, ilk argüman olarak dosya adını alan bir komut dosyası oluşturabilir ve sonra bu programı yönetici kaydetme gibi bir kısayol veya bir şeye bağlayabilirsiniz. Bu yönetici haklarını verirseniz ve dosyayı ilk argüman olarak arabellek adıyla ve ikinci olduğu yer olarak da adlandırırsanız, iyi olmalısınız.

komut dosyası basit BATfile, ala şey (Ben Bir Windows kutusunu değilim bu yüzden kendim için bunu test edemez)

:: Administrator-copy.bat copies a file with adminstrator privileges. 
:: Remember to give it administrator privileges! 
: START 
COPY %1 %2 
: END 

Ama bu olsa oldukça aksak bir çözüm olabilir.

Zaten çalışan bir uygulamayı nasıl yükselteceğim Bilmiyorum. Bu güzel makale için

+0

+1! Ctrl-shift-enter ile sudo 'yapabileceğini hiçbir fikrim yoktu. – Nathan

+0

Haakon için teşekkürler. Yenilgi kabul edeceğim ve yönetici değişiklikleri için ayrı bir Emacs oturumu başlatacağım. – Martin

+1

Bir uygulama çalıştırıldığında, onu yükseltemezsiniz (yükseltilmişse yükseltilemez.). Uygulamanın nasıl başlatıldığı ve sonradan değiştirilememesi ile ilgilidir. Bunu yapmak için görünen uygulamalar aslında kendilerinin başka bir kopyasını başlatır ve ardından orijinali kapatır. –