SORU
10 Ocak 2012, Salı


Nasıl el ile yükleme sonra ClickOnce dosya ilişkilerini kaydetmek için?

Microsoft ClickOnce deployment system built into the Visual Studio deployment process olan kolay kullanımlı bir dosya Derneği yöneticisi sunmaktadır. Geliştiriciler kullanıcı ClickOnce yükleyici çalıştığında otomatik olarak uygulama ile ilişkili olacak olan 8 dosya ilişkilerini ekleyebilirsiniz.

Bunu bir adım öteye götürmek isterdim:Kullanıcılar el ile eklemek veya kaldırmak için izin istiyorumekbenim uygulama içinde yükleme sonra dosya dernekler.

Bunu sağlamanın iki motivasyonları var:

  • ""Ek ClickOnce dağıtımları üzerinden dosya ilişkilerini nasıl işlendiğini, hangi kullanıcı, dernekler dosya. zorlamayacağım.
  • Kullanıcıları veya onların boş kendi benzersiz dosya dernekler Ekle / Kaldır.

Zor kısım: bir yürütülebilir ClickOnce dağıtımları ile uyumlu değil ile Doğrudan ilişkilendiren bir dosya türü

Geleneksel Windows uygulamalarının aksine, ClickOnce uygulamaları doğrudan yürütülebilir ile başlatılan. Bunun yerine, perde arkasında ClickOnce sihirli işleyen .appref-ms özel bir kısayol üzerinden (otomatik güncelleştirme, %LOCALAPPDATA%, vb karıştırılmış bir dizin yürütülebilir dosyaları bulmak) başlattı.

Eğer ClickOnce dağıtılan bir uygulama doğrudan çalıştırılabilir) açıldığında, otomatik güncelleştirmeleri devre dışı bırakılır ve ClickOnce özgü yöntemler artık çalışmaz. Bu nedenle, geleneksel kayıt defterinden dosya dernekler kullanın davam için mümkün değildir.

Visual ClickOnce kolları dernekler dosya

Görüntü aşağıda Visual Studio 2010, yerleşik dosya Derneği yöneticisi ClickOnce gösterir. Bu bilgiler, uygulamanın içinde saklanır .bildirim dosyası ve Windows yükleme sırasında kayıt defterine eklenir.

VS2010's ClickOnce File Association Manager

Benim kayıt defteri ile biraz araştırma yaptım ve dağıtılan ClickOnce uygulama ile ilişkilendirilecek dosya türlerini için birden fazla giriş ClickOnce yükleyici tarafından yapılan belirledik.

Örnek bir kayıt ClickOnce dosya türü bir ilişki için benim anahtar kayıt defterinde buldum:

rundll32.exe dfshim.dll, ShOpenVerbExtension {ae74407a-1faa-4fda-9056-b178562cf98f} %1

{ae74407a-1faa-4fda-9056-b178562cf98f} bir GUID ilgili uygulama için kayıt defterinde birkaç diğer yerlerde kullanılır.

Amacım bilgi kayıt (programlı) ClickOnce ile dağıtılan bir uygulama ile el ile ilişkilendirmek dosyalara eklenmesi gerekir öğrenmek için.

Herhangi bir yardım için teşekkür ederiz!

CEVAP
30 Mayıs 2013, PERŞEMBE


Kayıt defteri anahtarlarının eklenmesi için, Windows Vista Süreci İzlemek (daha Önce RegMon olarak da bilinir) kullanarak anlayabilirsiniz.

Uygulamanızın varsayılan dosya dernekler ile ClickOnce kullanarak yüklediğinizde Olayları yakalamak. Tüm kayıt işlemleri (onlara çok) kaydeder.

Bazı filtreler kolayca kayıt defteri anahtarlarını belirlemek için kullanmanız gerekir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FOSDEM

    FOSDEM

    13 Ocak 2009
  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • MikeyMacintosh

    MikeyM

    28 Aralık 2009