Aracılığıyla paylaş


Bağımlılık Grafiklerinde Kod Bağımlılıklarını Görselleştirme

Kodunuzu ve bağımlılıklarından kuruluşu anlamak ve görmek için bağımlılık grafikleri Visual Studio Ultimate oluşturabilirsiniz. Bağımlılık grafikler nelerdir ve nasıl işinize yarar?

Desteklenen projeler:

  • Windows Store apps ve derleme (.dll veya .exe) dosyaları da dahil olmak üzere visual C# .net ve Visual Basic .net projeleri.

  • c veya C++ kodu (yönetilen veya yerel) olan Windows Store apps dahil olmak üzere, visual C++ projeleri, üstbilgi dosyaları (.h ya da #include) ve ikili dosyalar.

Videolar:

Bu konuda

  • Nasıl başlayabilirim?

  • Kodunuzda bağımlılıkları görselleştiren

  • Bağımlılık grafikler paylaşımı

  • Toplu işlem için grafikler oluşturmak

  • Sorun Giderme

Nasıl başlayabilirim?

  • Çözümünüzün genel bir görünümünü almak: üzerinde mimarisi menüsünden seçin Baðýmlýlýk grafiði üretmek, İçin çözüm.

    Üst düzey derlemeler gösteren bir grafik alın. Şimdi, bu derlemeleri genişleterek tarafından da gözden geçirebilirsiniz. Derleme üzerine fare işaretçisini hareket ettirmek ve köşeli çift ayracı seçin (^) düğmesi göründüğünde. Ad alanlarý, türleri ve üye kodunuzu araştırma devam etmek için aynı yapın.

    Derlemenin üst düzey bağımlılık grafiği

    Bağımlılıkları gruplarında görmek için grafikteki bir öğeyi seçin.

    Seçili öğeleri ve genişletilmiş gruplar ile grafik

    Daha fazla bilgi için bkz: çözümünüzün genel bir görünümünü almak. Kodunuzda olası sorunları bulmak için Çözümleyicileri da çalıştırabilirsiniz. Bkz: Bağımlılık Grafiklerindeki Kodda Olası Sorunları Bulma

  • Belirli bağımlılıkları çözümünüzdeki görselleştirmek: de Solution Explorer'da, sizi ilgilendiren öğeleri seçin. Projeler, derleme başvuruları, klasörleri, dosyaları, türleri ve üyeleri seçebilirsiniz. Belirli bir öðeyi bulmak için Solution Explorer'da arama kutusu.

    Üzerinde Solution Explorer'da araç, seçim Yeni grafik belge oluşturmaSeçili düğümleri düğmesini kullanarak yeni bir grafik oluşturmak.

    - veya -

    Öğeleri sürükleyin Solution Explorer'da için varolan bir grafik.

    İpucu

    Boş bir grafik oluşturmak için dosyasını menüsünden seçin Yeni, Dosya, Yöneltilen grafik belge.Maddelerinizi üst öğe hiyerarşisine dahil etmek için basılı ctrl öğeleri sürüklerken anahtar.

    Seçilen öğeleri gösteren bir grafik alın. Şimdi, bu öğeleri genişleterek tarafından da gözden geçirebilirsiniz. Fare işaretçisi bir öğenin üzerine taşıyın ve köşeli çift ayracı seçin (^) düğmesi göründüğünde.

    Daha fazla bilgi için bkz: görsel öğe belirli bağımlılıkları çözümünüzdeki. Kodunuzda olası sorunları bulmak için Çözümleyicileri da çalıştırabilirsiniz. Bkz: Bağımlılık Grafiklerindeki Kodda Olası Sorunları Bulma

Bağımlılık grafikler nelerdir ve nasıl işinize yarar?

Bağımlılık grafikler kodunu inceleyin ve dosya ve kod satırları arasında aramak zorunda kalmadan kendi bağımlılıkları anlamak için görsel bir yol sağlar. Öğeleri ve ilişkileri yalnızca düğümler ve bağlantılar veya okları görebilirsiniz. Örneğin, gerçekleştirmek için kod gözden geçirme olduğunu varsayalım. Bekleyen değişiklikleri içeren dosya kümesi vardır. Bu dosyalardan bir baðýmlýlýk grafiði oluşturarak kodunu ve bu değişiklikler için bağımlılıkları görselleştirmek. Bkz: görsel öğe belirli bağımlılıkları çözümünüzdeki.

Varsayılan olarak, konteyner ilişkiler olarak temsil Gruplar, genişletme ve daraltma.

Gruplandırılmış düğümleri içeren bağımlılık grafiği

İpucu

Yeniden getirmesi çocuklar düğmesini Alt simge yeniden getirmesi kod içinde var, ancak grafikte görünmüyor Grup üyeleri almak sağlar.Daha kolay görebilmek için biz farklı bir stil çağrıları bağlantılar da uygulamış olduğunuz.Bkz: Bağımlılık Grafiklerini Düzenleme ve Özelleştirme

Kapsayıcı ilişkileri bağlantılar olarak da görüntüleyebilirsiniz. Grafik için kısayol menüsünü açın, seçim Grup, Gruplama devre dışı:

Düğümler ve bağlantılar içeren bağımlılık grafiği

Kodunuzda olası sorunları bulmak için Çözümleyicileri da çalıştırabilirsiniz. Bkz: Bağımlılık Grafiklerindeki Kodda Olası Sorunları Bulma

Visual Studio, ilk kez bir baðýmlýlýk grafiði üretirken bulduğu tüm bağımlılıkları dizin oluşturur. Bu işlem, özellikle büyük çözümler ya da birçok bağlantılar içeren grafikler için biraz zaman alabilir. Ancak, dizin sonraki işlemlerinin performansını artırır. Visual Studio, kod değişirse, güncelleştirilmiş kod reindexes.

Grafik oluşturmak için beklemek istemiyorsanız, bu adımı herhangi bir anda iptal etmek ve aşağıdaki önerileri deneyin:

  • Yalnızca sizi ilgilendiren bağımlılıklar grafiği.

  • Tüm bir çözüm için grafik oluşturmadan önce çözüm kapsamı azaltın.

Visual Studio, 1 gb bellek çalıştırabilirsiniz, ancak bilgisayarınızda en az 2 Visual Studio kod dizini oluştururken ve grafik oluşturur uzun gecikmeler önlemek için GB'ye kadar bellek olması önerilir.

Not

En az bir proje başarıyla oluşturur, visual Studio bir grafik oluşturur.Yalnızca başarılı bir şekilde oluşturur kodu için bağımlılıkları gösterir.Yapı belirli bileşenleri oluşursa, bu bileşenlerin hataları grafik üzerinde görünür.Bir bileşen aslında oluşturur ve grafik üzerinde temel mimari kararlar önce bağımlılıkları üzerinde bulunduğundan emin olun.

Grafikler oluşturmak ya da Solution Explorer'da proje öğesi, kullanıcının öğeleri eklemek için daha fazla zaman alabilir çıktı dizine kopyalayın özelliği ayarlanmış Her zaman kopya.Artımlı yapılar ve projenin her seferinde yeniden oluşturmak için Visual Studio ile bu sorunlara neden olabilir.Performansı artırmak için bu özelliği değiştirmek Yeni kopyalayın veya PreserveNewest.Bkz: Artımlı oluşturur

Kodunuzda bağımlılıkları görselleştiren

  • Kodunuzu özetini elde etmek

  • Görselleştirmenize kodunuzda belirli bağımlılıkları

  • Görselleştirmenize c veya C++ kaynak dosyalarını ve üstbilgi dosyaları arasındaki bağımlılıkları

  • Toplu işleme GraphCmd.exe kullanarak grafikler oluşturma

İpucu

C++ için daha kapsamlı grafikler oluşturmak için projeler, browse bilgileri derleyici seçeneği (/FR) bu projelerde ayarlamanız gerekir.Aksi halde, bir ileti görüntülenir ve bu seçeneği ayarlamak isteyip istemediğinizi sorar.İleti görüntülenirse, geçerli grafik seçeneğini seçerek ayarlayabilirsiniz Tamam, ya da seçenek kümesi ve sonraki tüm grafikler için iletiyi gizle.İletinin sonraki grafikler için görünür yapmak için aşağıdaki kayıt defteri anahtarını ayarlamak 0 veya anahtarını silin:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\NativeProvider : AutoEnableSbr

Bkz: / fr, /Fr (oluşturun.SBR dosyası)

Kodunuzu özetini elde etmek

Tüm çözümünüzün bir baðýmlýlýk grafiði oluşturabilirsiniz veya derlemeler veya ikili dosyaları için.

Dd409453.collapse_all(tr-tr,VS.110).gifÇözüm Özeti

  1. Üzerinde mimari menüsünden seçin Baðýmlýlýk grafiði üretmek, İçin çözüm.

    Üst düzey Derlemeler ve aralarında toplanan bağlantı gösteren bir grafik alın. Toplam bağlantı kalınlığını bağlantıyı temsil eden tek tek kaç bağımlılıkları gösterir. Externals Grup platform bağımlılıkları da dahil olmak üzere, çözümünüzü dışındaki her şeyi içerir. Dış birleştirmeler kullanılan öğeleri gösterir.

    Derlemenin üst düzey bağımlılık grafiği

  2. Şimdi, bu derlemeleri genişleterek tarafından da gözden geçirebilirsiniz. Derleme üzerine fare işaretçisini hareket ettirmek ve köşeli çift ayracı seçin (^) düğmesi göründüğünde. (Klavye: öğesini seçin ve ardından Seç artı (+) tuşuna.) Ad alanlarý, sınıflar ve üye kodunuzu araştırma devam etmek için aynı yapın.

  3. Bir öğe veya bağlantı hakkında daha fazla bilgi almak için bir araç ipucu görüntülenene kadar işaretçiyi öğenin üzerine taşıyın.

  4. Maddeler ve bağımlılık toplama bağlantı tarafından sunulan incelemek için önce bağlantıyı seçin ve kısayol menüsünü açmak. Seçim Göster, Contributing bağlantılar geçerli diyagramındaki veya Yeni bir diyagram Contributing bağlantıları.

    Visual Studio, bağlantının her iki ucundaki grupları genişletir ve bağlantıyı yalnızca öğeleri ve katılmak bağımlılıkları gösterir. Kod içinde var ancak bir gruptan eksik öğeleri görmek için Yeniden getirmesi çocuklarAlt simge yeniden getirmesi.

Bakın:

Dd409453.collapse_all(tr-tr,VS.110).gifDerlemeler veya ikili özetini elde etmek

  • Boş bir grafik oluşturmak, ya da varolan bir grafik (.dgml dosyası) açın. Visual Studio dışında derlemeler veya ikili grafiğe sürükleyin.

    Not

    Yalnızca Windows Gezgini ve Visual Studio aynı kullanıcı erişim denetimi (uac) izin düzeyini çalıştırıyorsanız, Windows Gezgini'nden derlemeler veya ikili dosyalar sürükleyebilirsiniz.Örneğin, UAC'yi açık ve Visual Studio yönetici olarak çalıştırmanın, sonra Windows Gezgini sürükleme işlemini engeller.Bu sorunu gidermek için Visual Studio yönetici olarak çalıştığından emin olun veya uac devre dışı bırakın.Windows 8'de dosya Explorer Windows Gezgini olduğunu unutmayın.

    -veya-

    1. Üzerinde mimari menüsünden seçin Windows, Mimari Explorer.

    2. İlk sütundaki altında Dosya sistemi, seçim Dosyaları Seç.

    3. İçinde açık kutusuna, bulmak ve derlemeler veya ikili dosyaları seçin. Seçim açık sonraki sütuna eklemek için Mimari Explorer.

    4. İçinde Mimari Explorer, derlemeler veya ikili dosyaları seçin.

    5. Seçili derlemeler veya ikili dosyalarını içeren sütunun sağına genişletmek için daraltılmış eylem sütunu seçin.

      İpucu

      İşaretçiyi üzerine getirdiğinde daraltılmış eylem sütununda vurgulanmış olarak görünür.

    6. Eylem sütunundaki altında komutları, seçim açık bir baðýmlýlýk grafiði üretmek için.

      Bkz: Mimari Gezgini ile Kod Bulma

Dd409453.collapse_all(tr-tr,VS.110).gifBoş bir grafik oluşturmak için

  1. Yeni boş bir grafik, çözümünüz için üzerinde eklemeden açmak için Dosya menüsünden seçin Yeni, Dosya.

    -veya-

    Boş bir grafik eklemek için Solution Items yapıtlarını, çözümünüzdeki üst düzey çözüm düðümü için kısayol menüsü. Seçim ekleme, New Item.

  2. Altında yüklü, seçim Genel.

  3. Sağ bölmede seçin Yöneltilen grafik belge.

    Bir model projeden için boş bir grafik ekleyebilirsiniz mimari menüsünü seçerek Yeni Diyagram.

Görselleştirmenize kodundaki belirli bağımlılıkları

Çözüm içinde belirli maddeler için bir baðýmlýlýk grafiði oluşturabilirsiniz veya Derlemeler ve ikili.

Görselleştirmenize çözümünüzdeki belirli bağımlılıkları

Nasıl özel kodu görselleştirin

Belirli bir kod ve Ebeveynler görselleştirmek nasıl

Dd409453.collapse_all(tr-tr,VS.110).gif

  1. İçinde Solution Explorer'da, sizi ilgilendiren öğeleri seçin. Projeler, derleme başvuruları, klasörleri, dosyaları, türleri ve üyeleri seçebilirsiniz. Belirli bir öðeyi bulmak için Solution Explorer'da arama kutusu.

    İpucu

    Türleri veya üyeleri bağımlı öğeleri bulmak için türü veya üye için kısayol menüsünü açın Solution Explorer'da.Bağımlılık türü seçin.Solution Explorer'da belirttiğiniz bağımlılığı olan maddeleri gösterir.Sonuçları seçin.

  2. Maddelerinizi ve üyeleri üzerinde grafiğini oluşturmak Solution Explorer'da araç, seçim Yeni grafik belge oluşturmaSeçili düğümleri düğmesini kullanarak yeni bir grafik oluşturmak.

    -veya-

    Üst hiyerarşi grafiğinde dahil etmek için açık ... yeni grafik belge oluşturma listesi, Solution Explorer araç, daha sonra seçim Öncüleri olan yeni bir baðýmlýlýk grafiði.

    İpucu

    Grafik öğeleri de sürükleyebilirsiniz.İlk olarak, boş bir grafik oluşturmak ya da varolan bir grafik (.dgml dosyası) açın.Üst kapsayıcı hiyerarşi dahil etmek için basılı ctrl öğeleri sürüklerken anahtar.

    Seçilen öğeleri gösteren bir grafik alın.

  3. Maddeleri keşfetmek için bunları genişletebilirsiniz. Fare işaretçisi bir öğenin üzerine taşıyın ve sonra chevron seçin (^) düğmesi göründüğünde. Tüm öğeleri genişletmek için grafik için kısayol menüsünü açın. Seçim Grup, Tümünü Genişlet.

    Not

    Tüm grupları genişletme kullanılamaz bir grafik veya bellek sorunları oluşturur, bu komut kullanılamaz.

  4. Bir gruptan eksik öğeleri almak için Yeniden getirmesi çocuklarAlt simge yeniden getirmesi grubunun içine.

  5. Grafik üzerinde olanlara ilgili daha fazla öğeleri görmek için öğe için kısayol menüsünü açın. Seçim Show ve sizi ilgilendiren öğeleri arasındaki ilişki.

    Bir derleme için seçin:

    Başvurulmuş Derlemeler

    Bu derleme başvuran derlemeler ekleyin. Dış birleştirmeler görünür Externals grubu.

    Başvurulan derlemeler

    Derlemeler çözümde bu derleme başvurusu ekleyin.

    Bir sınıf için seçin:

    Temel türler

    Bir sınıf için temel sınıf ve uygulanan arabirimlerini ekleyin.

    Bir arabirim için temel arabirimlerini ekleyin.

    Türemiş türler

    Bir sınıfın türetilmiş sınıfları ekleyin.

    Bir arabirim için türetilmiş arabirimleri ve uygulama sınıf ya da yapının ekleyin.

    Tüm temel türleri

    Temel sınıf ekleyebilir veya Sýradüzeninde yineleyerek arabirim.

    Tüm türetilen türler

    Bir sınıfın türetilmiş sınıfları yinelemeli ekleyin.

    Bir arabirim için türetilmiş arabirimleri ve uygulama sınıf ya da yapının yinelemeli olarak ekleyin.

    İçerik hiyerarşisi

    Üst kapsayıcı hiyerarşi ekleyin.

    Kullanılan türleri

    Tüm sınıf ve bu sınıfın kullandığı üyeleri ekleyin.

    Tarafından kullanılan türleri

    Tüm sınıflar ve bu sınıfın kullanan üyeleri ekleyin.

    İçin bir yöntem seçin:

    İçerik hiyerarşisi

    Üst kapsayıcı hiyerarşi ekleyin.

    Aranan yöntemleri

    Bu yöntem çağrıları yöntemleri ekleyin.

    Olarak adlandırılan yöntemleri

    Bu yöntemi çağırın yöntemleri ekleyin.

    Temel türler geçersiz kılınmış yöntemler

    Diğer yöntemleri geçersiz kılar veya bir arabirim yöntemi uygulayan bir yöntem için tüm soyut veya sanal yöntemleri geçersiz kılınır ana sınıflarda ekleyin ve varsa olan arabirim yöntemi uygulanır.

    Başvurulan alanlar

    Bu yönteme başvuran alanları ekleyin.

    Bir alan için seçin:

    İçerik hiyerarşisi

    Üst kapsayıcı hiyerarşi ekleyin.

    Başvuru yöntemleri

    Bu alana başvuru yöntemleri ekleyin.

Bakın:

Dd409453.collapse_all(tr-tr,VS.110).gifGörselleştirmenize derlemeler veya ikili dosyalar belirli bağımlılıkları

  1. Üzerinde mimari menüsünden seçin Windows, Mimari Explorer.

  2. İlk sütundaki altında Dosya sistemi, seçim Dosyaları Seç.

  3. İçinde açık kutusuna, bulmak ve derlemeler veya ikili dosyaları seçin. Seçim açık sonraki sütuna eklemek için Mimari Explorer.

  4. Sonraki sütundaki derlemeler veya ikili dosyaları seçin.

    Varsayılan olarak, sonraki sütuna göre seçilen maddeler bulunan öğeleri gösterir.

    İpucu

    Diğer ilgili öğeleri seçmek için seçiminizi sütununun sağındaki daraltılmış sütununu genişletin.Altında Düğümü gezinti, sizi ilgilendiren öğe türlerini seçin.Altında Giden gezinti veya Gelen gezinti, sizi ilgilendiren ilişki türlerini seçin.Bkz: Mimari Gezgini ile Kod Bulma

  5. Bulmak ve grafik üzerinde koymak istediğiniz tüm öğeleri seçin.

  6. Yeni bir grafik oluşturmak için Mimari Explorer araç, seçim tüm düğümlerdeki seçilen yeni grafik belge oluşturmaSeçili düğümleri düğmesini kullanarak yeni bir grafik oluşturmak.

    Visual Studio, grafiği oluşturur ve açar.

    -veya-

    Seçiminize eklemek için aşağıdaki adımları izleyin:

    1. Grafiğin .dgml dosyasını açın veya boş bir grafik oluşturmak.

    2. Üzerinde Mimari Explorer aracı çubuk, seçim görünen grafik belgeye seçili düğüm eklemekDüğmesi grafik için seçili tüm düğümleri ekleyin.

      -veya-

      Öğeleri sürükleyin Mimari Explorer grafik için.

Görselleştirmenize c ve C++ kaynak dosyalarını ve üstbilgi dosyaları arasındaki bağımlılıkları

Arasındaki bağımlılıkları görmek için

Bunu yapmak

Tüm kaynak dosyalarını ve çözümdeki üstbilgi dosyaları

Üzerinde mimari menüsünden seçin Baðýmlýlýk grafiði üretmek, İçerme dosyası için.

Yerel kodu için bağımlılık grafiği

Açık dosya ve ilgili kaynak dosyalarını ve üstbilgi dosyaları

  1. Kaynak dosya veya üstbilgi dosyası açın.

  2. Dosya içinde herhangi bir yerde kısayol menüsünü açar. Seçim dosyaları Ekle grafiğini oluşturmak.

.H dosyası için birinci düzey bağımlılık grafiği

Not

Visual C++ özellikleri içeren bir çözümü açtığınızda, IntelliSense veritabanýný güncelleþtirmek için biraz zaman alabilir.Bu süre boyunca, başlığı için bağımlılık grafikler oluşturmak mümkün olmayabilir (.h ya da #include) IntelliSense veritabanı güncelleştiriliyor bitene kadar dosyaları.Visual Studio durum çubuğunda güncelleştirme ilerlemesini izleyebilirsiniz.Sorunları ya da belirli IntelliSense ayarları devre dışı bırakıldığı için görüntülenen iletileri çözümlemek için bkz: sorun giderme.

Bağımlılık grafikler paylaşımı

Kaydet ve grafik Visual Studio diğer kullanıcılarla paylaşma

  • Use dosyasını grafik kaydetmek için menü.

    -veya-

    Grafiği belirli bir projenin parçası kaydetmek için grafiği yüzey için kısayol menüsünü açın. Seçim Taşı <DependencyGraphName.dgml> içine hem de grafiği kaydetmek istediğiniz yeri projesi.

    Visual Studio, graph Visual Studio Ultimate, Visual Studio Premium ve Visual Studio Professional başka kullanıcılarla paylaşabileceğiniz bir .dgml dosyası olarak kaydeder.

    Not

    Bir grafik kullananlar ile Visual Studio Premium ve Visual Studio Professional paylaşmadan önce herhangi bir grubu genişletin, gizli düğümlerini göstermek ve siteler arası grubu bağlantıları ve diğerlerinin sizin grafikte görmek istediğiniz silinen tüm düğümleri almak emin olun.Aksi halde, diğer kullanıcıların bu öğeleri görmek kullanamazsınız.

    Bir modelleme projesinde olan ya da bir modelleme projesinden başka bir konuma kopyalanan bir grafiği kaydettiğinizde aşağıdaki hata ortaya çıkabilir:

    "fileName proje dizininin dışına kaydedilemez.Bağlantılı öğeler desteklenmez."

    Visual Studio hata gösterir, ancak yine de kaydedilmiş sürümünü oluşturur.Hatayı önlemek için grafiği modelleme projesinin dışında oluşturun.Sonra istediğiniz konuma kaydedebilirsiniz.Sadece çözümdeki başka bir konuma dosya kopyalama ve sonra onu kaydetmeye çalışmak başarısızlıkla sonuçlanacaktır.

Microsoft Word veya PowerPoint gibi diğer uygulamalara kopyalamak içib grafiği resim olarak verme

  1. Grafik yüzey için kısayol menüsünü açın. Seçim düzenleme, resim kopyalama.

  2. Resmi başka bir uygulamaya yapıştırın.

Internet Explorer gibi xml ya da xaml görüntüleyicileri görebilmek için grafik xps dosyası olarak dışa aktarma

  1. Grafik yüzeyinden kısayol menüsünü açın. Seçim xps Kaydet.

  2. İçinde Farklı Kaydet iletişim kutusunda, dosyayı kaydetmek istediğiniz yeri için Gözat.

  3. Grafik adı. Emin olun türü kutusunu ayarlayın xps dosyaları (*.xps). Seçim kaydetmek.

Toplu işlem için grafikler oluşturmak

Grafik belgeleri (.dgml dosyaları) kullanarak toplu iş modunda oluşturabilirsiniz GraphCmd.exe komut satırı aracı. Örneğin, aracı her yapı sonra değişmiş Bul bağımlılıkları yapılar arasında çalıştırabilirsiniz. Bu aracı bulmak için aşağıdaki klasöre bakın: C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE.

Not

GraphCmd.exe yalnızca .net kod destekler ve bağımlılık bilgilerini derlemeler veya .dgml dosyalar için kaynak, Visual Studio çözüm ya da proje dosyalarındaki kod üretir.dgql sorguları eylemler için destek sınırlı, bu nedenle dış Visual Studio GraphCmd.exe çalışır.

GraphCmd.exe için aşağıdaki sözdizimini kullanın:

GraphCmd -? -all -exceptions -input File_Name -query File_Name -exec "DGQL_Statement" -output File_Name -path alias=path

İpucu

Aşağıdaki seçenekleri birden çok kez belirleyebilirsiniz: -input, -query, -exec ve -path.

Aşağıdaki tablo GraphCmd.exe için seçenekleri tanımlar:

-?

GraphCmd.exe için yardım konularını görüntüleyin.

-all

Sadece son düğüm kümesinin değil, tüm ara sorguların sonuçlarını içerir.

-exceptions

Sorgu istisnalarını grafik belgesi (.dgml) dosyası olarak raporlayın.

-input File_Name

Belirtilen .dgml dosyasını işleyin.

Bu, büyük .dgml dosyasının son işlem ve böylece, onu daha kolay Visual Studio'da görselleştirmek filtreleme için yararlıdır.

-query File_Name

Belirtilen Yönlendirilmiş Grafik Sorgu Dili (DGQL veya.dgql) dosyasını çalıştırın.

Bakın:

-exec "DGQL_Statement"

Belirtilen DGQL deyimini çalıştırın.

Bkz: anlama yönlendirilmiş grafik sorgu dili (dgql).

-output File_Name

Belirtilen .dgml dosyasını çıktı olarak ver.

-path takma ad=yol

DGML belgelerinin girdi ve çıktısında kullanılacak yeni bir diğer ad belirtin.

Örne?in:

GraphCmd -output MyGeneratedGraph.dgml -path "MyPathAlias=C:\Program Files\..."

Bkz: diğer sık kullanılan yolları için.

Dd409453.collapse_all(tr-tr,VS.110).gifSık kullanılan yolları için diğer adlar

Yaygın olarak kullanılan yolların takma adları, .dgml dosyasının boyutunu ve dosyayı yüklemek veya kaydetmek için gereken süreyi azaltır. Bir diğer ad oluşturmak için .dgml dosyasının sonundaki bölüme bir <Paths></Paths> öğesi ekleyin. Bu bölümde, yolun eş yolunu tanımlamak için bir <Path/> öğesi ekleyin:

<Paths>
   <Path Id="MyPathAlias" Value="C:\...\..." />
</Paths>

Bir .dgml dosyasındaki bir öğeden diğer ada başvuru yapmak için <Path/> öğesinin Id değerini bir dolar işareti ($) ve parantez (()) arasına koyun:

<Nodes>
   <Node Id="MyNode" Reference="$(MyPathAlias)MyDocument.txt" />
</Nodes>
<Properties>
   <Property Id="Reference" Label="My Document" DataType="System.String" IsReference="True" />
</Properties>

.Dgml dosyaları düzenlemek için bkz: Bağımlılık Grafiklerini Düzenleme ve Özelleştirme.

Dd409453.collapse_all(tr-tr,VS.110).gifYönlendirilmiş Grafik Sorgu Dilini (DGQL) Anlamak

DGQL DGML oluşturmak için kullanabileceğiniz bir hafif sorgu dilidir. DGQL deyimi, çıktının bir sonraki düğüm seçiminde girdi haline geldiği vb., her düğüm seçiminin sonraki eylem için girdi oluşturduğu değişen bir düğüm seçim ve eylem modeli izler.

Bir DGQL deyiminin biçimi şöyledir:

<node selection> / <action> / <node selection> / <action> / ...

Aşağıdaki tablo düğümleri seçmek için kullanılan DGQL sözdizimini açıklar:

*

Tüm düğümleri seçin.

+ "text"

"metin" içeren tüm düğümleri seçin.

+ Id.Equals("text")

Id öğesi "text" öğesine eşit olan tüm düğümleri seçin.

+ Background.Contains("text")

Background özniteliğinde "text" dizesi içeren bir değer olan tüm düğümleri seçin.

+ "text1" + "text2" + ...

"text1" veya "text2" ile eşleşen tüm düğümleri seçin.

+ MyProperty="True"

Değeri "Doğru" olan ve MyProperty olarak adlandırılmış bir özelliği olan tüm düğümleri seçin.

- Label.Contains("text")

Label özniteliği olan, Contains "metin" dizesini içerenler dışında tüm düğümleri seçin.

+ Category.Is("MyCategory")

MyCategory olarak adlandırılmış kategorisi olan veya MyCategory öğesinden devralan tüm düğümleri seçin.

Aşağıdaki tablo seçilen düğümlerde gerçekleştirilebilecek doğrudan eylem örneklerini açıklar:

Örnek eylem

Tanımlama

Microsoft.Contains

Giriş düğümlerinde saklanan tüm düğümleri geri döndürür. Contains uygulamasını farklı bir bağlantı kategorisiyle değiştirebilirsiniz.

Microsoft.Open

Giriş düğümleri için kaynak kodunu açın.

NotNot
Yalnızca Visual Studio ile çalışır.

Microsoft.AllOutBoundLinks

Giriş düğümlerinden giden bağlantının hedef tarafında bulunan tüm düğümleri geri döndürür.

Microsoft.AllInboundLinks

Giriş düğümleri bağlantısının kaynak tarafında bulunan tüm düğümleri geri döndürür.

Microsoft.Core.CreateGroupsByProperties

GroupByProperties eylemini çağırın.

Microsoft.AllNodes

Tüm grafikteki bugüne kadarki bütün düğümleri döndürür.

Veri tabanlı eylemler yalnızca giriş düğümleri ve bağlantılar üzerindeki verilere bağlı öğeleri seçer. Veri tabanlı eylemleri kullanarak kategorileri eşleştirirken devralınan kategoriler de dahil edilir. Aşağıdaki tablo veri tabanlı eylem örneklerini açıklar:

Tür

Tanımlama

Node:Both:Category

Kategorisi Category olan ve giriş düğümlerine iki yönde işaret eden bir bağlantı ile bağlı bütün düğümleri geri döndürür.

Link:Both:Category

Giriş düğümleri ile bağlı bütün düğümleri, iki yönde işaret eden bir bağlantı ile geri döndürür ve Category kategorisi vardır.

Link:Backward:Category

Kategorisi Category olan bir bağlantı ile giriş düğümlerine işaret eden tüm düğüm noktalarını döndürür.

Link:Forward:Category

Kategorisi Category olan bir bağlantı ile giriş düğümlerinden işaret edilen tüm düğüm noktalarını döndürür.

Dd409453.collapse_all(tr-tr,VS.110).gifİpuçları

  • Genellikle belirli bir takım girdi düğümleri için Mimari Gezgini tarafından otomatik olarak seçilen bir "varsayılan" eylem vardır. Aynı davranışı sağlamak için boş bir eylem kullanın: //

  • DGQL içindeki beyaz boşluk önemli değildir, bu yüzden sorgunuzu gerekirse bir satıra sığacak şekilde biçimlendirebilirsiniz. Bu –exec seçeneğini GraphCmd ile kullandığınızda kullanışlıdır.

  • DGQL'i hata ayıklarken, sorgunun her bir adımını görmenize ve beklenen sonuçları üretmeyen adımı bulmanıza yardımcı olması için Mimari Gezgin'deki "Execute Expanded" eylemini kullanın.

Dd409453.collapse_all(tr-tr,VS.110).gifÖrnek

Aşağıdaki DGQL anlatımı aşağıdaki adımlarda belirtildiği gibi bir sorgu yürütür:

+ Id.Equals("Microsoft.Solution.ClassView") / "Microsoft.Solution.ClassView" / * / "Node:Both:CodeSchema_Class" / + CodeSchemaProperty_IsPublic.Equals("True")
  1. Seçim Class View ilk sütununda düğüm Mimari Explorer.

  2. Eylemi gerçekleştirmek "Microsoft.Solution.ClassView", çözüm, tüm ad alanlarını döndürülüyor. 

  3. Tüm ad alanlarını seçmek için * kullanın.

  4. CodeSchema_Class kategorisi olan ve bu ad alanlarına herhangi bir yönde bir bağlantıyla ilişkili olan tüm düğümleri seçin. Bunlar genellikle kapsama bağlantılarıdır.

  5. Sonuç sınıflarını yalnızca CodeSchemaProperty_IsPublic="True" özelliğine sahip olanlar biçiminde filtreleyin.

Teknik olarak "Microsoft.Solution.ClassView" eylemi Class View düğümü için "varsayılan" eylem olduğundan gereksizdir. Bu yüzden, sorguyu basitleştirmek ve tek bir satırda aşağıdaki gibi biçimlendirmek için, bu eylemi // öğesiyle değiştirebilirsiniz:

+Id.Equals("Microsoft.Solution.ClassView")//*/"Node:Both:CodeSchema_Class"/+CodeSchemaProperty_IsPublic.Equals("True")

Sorun Giderme

Aşağıdaki öğeler için c ve C++ kodu desteklenmez:

  • Temel türler üst hiyerarşi içeren grafikler üzerinde görünmüyor.

  • Çoğu Show menü öğeleri için c ve C++ kodu yoktur.

c ve C++ kodu için bağımlılık grafikler oluştururken, aşağıdaki sorunlar ortaya çıkabilir:

Öğe

Olası neden

Çözüm

Baðýmlýlýk grafiði oluşturulamadı.

Hiçbir çözüm projeleri başarıyla oluşturulmuştu.

Oluşan derleme hataları giderin ve grafiği yeniden oluşturmak.

Visual Studiogelen bir baðýmlýlýk grafiði oluşturmaya çalıştığınızda yanıt vermemeye başlıyor mimari menüsü.

Program (.pdb) veritabanı dosyası bozuk olabilir.

.Pdb dosyası türü, yöntem ve kaynak dosya bilgileri gibi hata ayıklama bilgileri depolar.

Bkz: [ESKİ] Program Veritabanı Dosyaları (C++)

Çözümü yeniden oluþturun ve yeniden deneyin.

IntelliSense gözatma veritabanı belirli ayarları devre dışı bırakılır.

Belirli IntelliSense ayarları, devre dışı Visual Studioseçenekleri iletişim kutusu.

Bunları etkinleştirmek için ayarları etkinleştirin.

Bkz: Gelişmiş seçenekleri, metin düzenleyicisi, c/C++

İleti Bilinmeyen yöntem bir yöntem düğümünde görünür.

Yöntemin adı çözümlenemediği için bu sorun oluşur.

İkili dosya temel değişikliği tablosu olmayabilir.

/FIXED:NO linker seçeneği.

Bkz: / SABİT (sabit taban adresi)

Program (.pdb) veritabanı dosyası yerleşik değil.

.Pdb dosyası türü, yöntem ve kaynak dosya bilgileri gibi hata ayıklama bilgileri depolar.

Daha fazla bilgi için bkz. [ESKİ] Program Veritabanı Dosyaları (C++).

/DEBUG linker seçeneği.

Bkz: / Debug hata ayıklama (Debug bilgi Oluştur)

Açamaz veya beklenen konumlarda .pdb dosyası bulunamıyor.

.Pdb dosyası beklenen konumda bulunduğundan emin olun.

Hata ayıklama bilgileri, .pdb dosyasından atılmış.

/PDBSTRIPED Linker seçeneği kullanıldı, bunun yerine tam .pdb dosyası içerir.

Bkz: / PDBSTRIPPED (şerit özel simgeler)

Çağıran bir işlev değil ve thunk ikili dosyada ya da veri bölümündeki bir işaretçi.

Arayan bir thunk olduğunda kullanmayı deneyin _declspec(dllimport) thunk önlemek için.

Bakın:

Başka ne yapabilirim?

Daha fazla bilgiyi nereden bulabilirim?

Kategori

Bağlantılar

Forumlar

Bloglar