{"id":376,"date":"2020-05-13T11:15:07","date_gmt":"2020-05-13T15:15:07","guid":{"rendered":"http:\/\/adc-dao.com\/wordpress\/?p=376"},"modified":"2020-05-13T11:15:09","modified_gmt":"2020-05-13T15:15:09","slug":"programmation-revit-analyse-du-squelette-dune-extension-revit","status":"publish","type":"post","link":"http:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/","title":{"rendered":"Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Dans mon article pr\u00e9c\u00e9dent (<a href=\"http:\/\/adc-dao.com\/wordpress\/programmation-revit-creer-votre-premiere-extension\/\"><strong>Cr\u00e9er votre premi\u00e8re extension extension<\/strong><\/a>), nous avons cr\u00e9\u00e9 notre premi\u00e8re extension.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Maintenant nous allons analyser ce que le mod\u00e8le de d\u00e9part a inclut automatiquement dans le projet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mod\u00e8le utilis\u00e9<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Premi\u00e8rement le mod\u00e8le de base utilis\u00e9 se nomme  <strong>Biblioth\u00e8que de classes (.NET Framework)<\/strong>. \u00c0 partir de la fen\u00eatre <strong>Cr\u00e9er<\/strong>, nous aurions pu utiliser ce mod\u00e8le, mais nous aurions d\u00fb ajouter plusieurs \u00e9l\u00e9ments manuellement pour en faire un projet d&rsquo;extension <em>Revit<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"680\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png\" alt=\"\" class=\"wp-image-377\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56-300x199.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56-768x510.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><figcaption>Biblioth\u00e8que de classes (.NET Framework)<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">R\u00e9f\u00e9rences<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 notre biblioth\u00e8que de classes, il faut ajouter des r\u00e9f\u00e9rences aux librairies <em>Revit<\/em>. L&rsquo;assistant les a ajout\u00e9es pour nous. La liste des r\u00e9f\u00e9rences se trouve dans l&rsquo;explorateur de solutions, g\u00e9n\u00e9ralement plac\u00e9 \u00e0 droite de la fen\u00eatre. Pour ajouter des r\u00e9f\u00e9rences manuellement, cliquez <strong><em>R\u00e9f\u00e9rences <\/em><\/strong>avec le bouton droit de la souris et s\u00e9lectionnez <strong>Ajouter une r\u00e9f\u00e9rence&#8230;<\/strong>. Puis avec le bouton <strong>Parcourir&#8230;<\/strong>, s\u00e9lectionnez le fichier de r\u00e9f\u00e9rence \u00e0 ajouter.  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il s&rsquo;agit des r\u00e9f\u00e9rences suivantes:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>RevitAPI<\/strong> (C:\\Program Files\\Autodesk\\Revit 2020\\RevitAPI.dll)<\/li><li><strong>RevitAPIUI<\/strong> (C:\\Program Files\\Autodesk\\Revit 2020\\RevitAPIUI.dll)<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"357\" height=\"306\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h18_55.png\" alt=\"\" class=\"wp-image-378\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h18_55.png 357w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h18_55-300x257.png 300w\" sizes=\"auto, (max-width: 357px) 100vw, 357px\" \/><figcaption>R\u00e9f\u00e9rences<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Pour les r\u00e9f\u00e9rences <em>Revit<\/em>, il est important de s&rsquo;assurer que le param\u00e8tre <strong>Copie locale<\/strong> soit \u00e0 <strong>False<\/strong>. Pour d&rsquo;autres types de r\u00e9f\u00e9rences ce param\u00e8tre peut \u00eatre \u00e0 <strong>True <\/strong>mais pas dans ce cas-ci.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"317\" height=\"486\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_11h03_56.png\" alt=\"\" class=\"wp-image-389\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_11h03_56.png 317w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_11h03_56-196x300.png 196w\" sizes=\"auto, (max-width: 317px) 100vw, 317px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Application<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 partir de l&rsquo;explorateur de solutions, double-cliquez <strong>Properties<\/strong>. Les propri\u00e9t\u00e9s du projet s&rsquo;affichent. S\u00e9lectionnez <strong>Application<\/strong>. Notez la version du framework cible (<strong>.NET Framework 4.7<\/strong>). C&rsquo;est la version utilis\u00e9e par Revit. Si nous voulons cibler des versions plus anciennes de <em>Revit<\/em>, vous pouvez s\u00e9lectionner une version plus ancienne. Vous devrez aussi ajuster vos r\u00e9f\u00e9rences en cons\u00e9quence. Si vous utilisez une version plus ancienne, vous pourrez quand m\u00eame ex\u00e9cuter votre extension sur des versions plus r\u00e9centes.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"436\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h19_43-1024x436.png\" alt=\"\" class=\"wp-image-380\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h19_43-1024x436.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h19_43-300x128.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h19_43-768x327.png 768w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h19_43.png 1053w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><figcaption>Framework cible<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00e9boguer<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Pour d\u00e9boguer votre extension, vous devez sp\u00e9cifier la localisation du fichier de d\u00e9marrage de <em>Revit<\/em>. Toujours \u00e0 partir de la fen\u00eatre des propri\u00e9t\u00e9s du projet, s\u00e9lectionnez <strong>D\u00e9boguer<\/strong>. Notez le nom du programme externe \u00e0 d\u00e9marrer. Si vous cibler une version diff\u00e9rente de <em>Revit<\/em>, utilisez le bouton <strong>Parcourir&#8230;<\/strong> pour s\u00e9lectionner le fichier de d\u00e9marrage.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h20_37-1024x572.png\" alt=\"\" class=\"wp-image-381\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h20_37-1024x572.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h20_37-300x168.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h20_37-768x429.png 768w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h20_37.png 1280w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Vous pouvez aussi ajouter des arguments \u00e0 la ligne de commande (section <em>Options de d\u00e9marrage<\/em>). Par exemple pour d\u00e9marrer <em>Revit <\/em>dans une langue pr\u00e9cise (ex. Anglais), vous pourriez ajouter l&rsquo;argument suivant:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00ab <strong>\/language ENU<\/strong>\u00bb<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9v\u00e8nements de build<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Toujours \u00e0 partir de la fen\u00eatre des propri\u00e9t\u00e9s du projet, s\u00e9lectionnez <strong>\u00c9v\u00e8nements de build<\/strong>. Un <em>build <\/em>se produit lorsque vous compilez votre projet ou votre solution ou lorsque vous d\u00e9marrez le d\u00e9bogage. Avant ou apr\u00e8s un <em>build<\/em>, vous pouvez ex\u00e9cuter certaines op\u00e9rations. Dans les \u00e9v\u00e8nements <em>post-build<\/em> (apr\u00e8s la compilation), certaines fonctions s&rsquo;ex\u00e9cutent comme la copie de certains fichiers. En effet pour que l&rsquo;extension s&rsquo;ex\u00e9cute au d\u00e9marrage de <em>Revit<\/em>, les fichiers doivent \u00eatre localis\u00e9s \u00e0 un emplacement pr\u00e9cis. Il existe deux (2) possibilit\u00e9s:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>C:\\ProgramData\\Autodesk\\Revit\\Addins\\2020<\/strong> ou<\/li><li><strong>C:\\Users\\<em>Username<\/em>\\AppData\\Roaming\\Autodesk\\Revit\\Addins\\2020<\/strong><\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">o\u00f9 <strong><em>Username <\/em><\/strong>repr\u00e9sente le nom de l&rsquo;usage Windows.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vous pouvez modifier la version de <em>Revit <\/em>(2020) pour une autre. Si vous avez plusieurs versions, vous pouvez copier les fichiers requis pour chaque version dans laquelle vous voulez que votre extension s&rsquo;ex\u00e9cute.<\/p>\n\n\n\n<p class=\"has-text-align-left wp-block-paragraph\">Si vous voulez que votre extension soit disponible \u00e0 tous les utilisateurs <em>Windows<\/em>, utilisez le dossier <strong>ProgramData <\/strong>plut\u00f4t que celui de l&rsquo;usager. L&rsquo;\u00e9v\u00e8nement <em>post-build <\/em>d\u00e9fini par d\u00e9faut copie plut\u00f4t les fichiers dans le dossier utilisateur pour le d\u00e9bogage. Notez l&rsquo;utilisation de variables (ex. <strong>$(Appdata)<\/strong>) pour le chemin de dossier standard. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"988\" height=\"423\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h21_48.png\" alt=\"\" class=\"wp-image-383\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h21_48.png 988w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h21_48-300x128.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h21_48-768x329.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><figcaption>\u00c9v\u00e8nement post-build<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Actuellement deux(2) fichiers seront copi\u00e9s apr\u00e8s la compilation soit:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>MaPremiereExtensionRevit.dll<\/strong> (l&rsquo;ex\u00e9cutable de l&rsquo;extension)<\/li><li><strong>MaPremiereExtensionRevit.addin<\/strong> (le manifeste)<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Les classes<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Les classes sont des fichiers qui contiennent le code (dans ce cas-ci en langage C#). Pour ajouter des classes, \u00e0 partir de l&rsquo;explorateur de solutions, cliquez le nom du projet (ex. <strong>MaPremiereExtensionRevit<\/strong>) avec le bouton droit de la souris et s\u00e9lectionnez <em>Ajouter->Classe&#8230;<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Par d\u00e9faut, le mod\u00e8le nous a cr\u00e9\u00e9 deux (2) fichiers de classes:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>App.cs<\/strong><\/li><li><strong>Command.cs<\/strong><\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>App.cs<\/strong> contient le code qui s&rsquo;ex\u00e9cute au d\u00e9marrage (chargement) de l&rsquo;application. C&rsquo;est ici entre autres que l&rsquo;on pourrait trouver les instructions pour ajouter un nouvel onglet au ruban ou des boutons \u00e0 l&rsquo;int\u00e9rieur d&rsquo;onglet existant.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h23_53-1024x572.png\" alt=\"\" class=\"wp-image-386\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h23_53-1024x572.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h23_53-300x168.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h23_53-768x429.png 768w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h23_53.png 1280w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><figcaption>App.cs<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Command.cs<\/strong> contient le code qui s&rsquo;ex\u00e9cutera lors de l&rsquo;ex\u00e9cution de la commande. Vous pouvez avoir plus d&rsquo;une commande par application.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h26_53-1024x572.png\" alt=\"\" class=\"wp-image-387\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h26_53-1024x572.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h26_53-300x168.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h26_53-768x429.png 768w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h26_53.png 1280w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><figcaption>Command.cs<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Le manifeste<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Le manifeste contient les informations requises pour le chargement de l&rsquo;application et des commandes dans <em>Revit<\/em>. Nous reviendrons plus en d\u00e9tails sur son contenu dans un article ult\u00e9rieur.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"572\" src=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h27_38-1024x572.png\" alt=\"\" class=\"wp-image-388\" srcset=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h27_38-1024x572.png 1024w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h27_38-300x168.png 300w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h27_38-768x429.png 768w, http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-12_11h27_38.png 1280w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c0 ce stade-ci nous devrions mieux comprendre la structure d&rsquo;une extension <em>Revit<\/em>. Dans mon prochain article, je d\u00e9cortiquerai le contenu des fichiers de classes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">D&rsquo;ici l\u00e0, bon codage!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans mon article pr\u00e9c\u00e9dent (Cr\u00e9er votre premi\u00e8re extension extension), nous avons cr\u00e9\u00e9 notre premi\u00e8re extension. Maintenant nous allons analyser ce que le mod\u00e8le de d\u00e9part a inclut automatiquement dans le projet. Mod\u00e8le utilis\u00e9 Premi\u00e8rement le mod\u00e8le de base utilis\u00e9 se nomme Biblioth\u00e8que de classes (.NET Framework). \u00c0 partir de la fen\u00eatre Cr\u00e9er, nous aurions pu &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-376","post","type-post","status-publish","format-standard","hentry","category-revit-csharp"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Programmation Revit - Analyse du squelette d&#039;une extension Revit - Blogue ADC-DAO<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Programmation Revit - Analyse du squelette d&#039;une extension Revit - Blogue ADC-DAO\" \/>\n<meta property=\"og:description\" content=\"Dans mon article pr\u00e9c\u00e9dent (Cr\u00e9er votre premi\u00e8re extension extension), nous avons cr\u00e9\u00e9 notre premi\u00e8re extension. Maintenant nous allons analyser ce que le mod\u00e8le de d\u00e9part a inclut automatiquement dans le projet. Mod\u00e8le utilis\u00e9 Premi\u00e8rement le mod\u00e8le de base utilis\u00e9 se nomme Biblioth\u00e8que de classes (.NET Framework). \u00c0 partir de la fen\u00eatre Cr\u00e9er, nous aurions pu &hellip; Continuer la lecture de &laquo;&nbsp;Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit&nbsp;&raquo;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/\" \/>\n<meta property=\"og:site_name\" content=\"Blogue ADC-DAO\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-13T15:15:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-05-13T15:15:09+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Dagenais\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Dagenais\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Dagenais\",\"@id\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/30c434ee2fe6b91acb878ee61119cf52\"},\"headline\":\"Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit\",\"datePublished\":\"2020-05-13T15:15:07+00:00\",\"dateModified\":\"2020-05-13T15:15:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/\"},\"wordCount\":895,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/2020-05-13_09h44_56.png\",\"articleSection\":[\"Revit CSharp\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/\",\"url\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/\",\"name\":\"Programmation Revit - Analyse du squelette d'une extension Revit - Blogue ADC-DAO\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/2020-05-13_09h44_56.png\",\"datePublished\":\"2020-05-13T15:15:07+00:00\",\"dateModified\":\"2020-05-13T15:15:09+00:00\",\"author\":{\"@id\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/30c434ee2fe6b91acb878ee61119cf52\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#primaryimage\",\"url\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/2020-05-13_09h44_56.png\",\"contentUrl\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/05\\\/2020-05-13_09h44_56.png\",\"width\":1024,\"height\":680},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/adc-dao.com\\\/wordpress\\\/programmation-revit-analyse-du-squelette-dune-extension-revit\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit\"}]},{\"@type\":\"WebSite\",\"@id\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/#website\",\"url\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/\",\"name\":\"Blogue ADC-DAO\",\"description\":\"Personnalisation et programmation AutoCAD\\\/Revit\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/30c434ee2fe6b91acb878ee61119cf52\",\"name\":\"Andr\u00e9 Dagenais\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Dagenais\"},\"url\":\"http:\\\/\\\/adc-dao.com\\\/wordpress\\\/author\\\/andred\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Programmation Revit - Analyse du squelette d'une extension Revit - Blogue ADC-DAO","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/","og_locale":"fr_FR","og_type":"article","og_title":"Programmation Revit - Analyse du squelette d'une extension Revit - Blogue ADC-DAO","og_description":"Dans mon article pr\u00e9c\u00e9dent (Cr\u00e9er votre premi\u00e8re extension extension), nous avons cr\u00e9\u00e9 notre premi\u00e8re extension. Maintenant nous allons analyser ce que le mod\u00e8le de d\u00e9part a inclut automatiquement dans le projet. Mod\u00e8le utilis\u00e9 Premi\u00e8rement le mod\u00e8le de base utilis\u00e9 se nomme Biblioth\u00e8que de classes (.NET Framework). \u00c0 partir de la fen\u00eatre Cr\u00e9er, nous aurions pu &hellip; Continuer la lecture de &laquo;&nbsp;Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit&nbsp;&raquo;","og_url":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/","og_site_name":"Blogue ADC-DAO","article_published_time":"2020-05-13T15:15:07+00:00","article_modified_time":"2020-05-13T15:15:09+00:00","og_image":[{"url":"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png","type":"","width":"","height":""}],"author":"Andr\u00e9 Dagenais","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"Andr\u00e9 Dagenais","Dur\u00e9e de lecture estim\u00e9e":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#article","isPartOf":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/"},"author":{"name":"Andr\u00e9 Dagenais","@id":"http:\/\/adc-dao.com\/wordpress\/#\/schema\/person\/30c434ee2fe6b91acb878ee61119cf52"},"headline":"Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit","datePublished":"2020-05-13T15:15:07+00:00","dateModified":"2020-05-13T15:15:09+00:00","mainEntityOfPage":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/"},"wordCount":895,"commentCount":0,"image":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#primaryimage"},"thumbnailUrl":"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png","articleSection":["Revit CSharp"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/","url":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/","name":"Programmation Revit - Analyse du squelette d'une extension Revit - Blogue ADC-DAO","isPartOf":{"@id":"http:\/\/adc-dao.com\/wordpress\/#website"},"primaryImageOfPage":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#primaryimage"},"image":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#primaryimage"},"thumbnailUrl":"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png","datePublished":"2020-05-13T15:15:07+00:00","dateModified":"2020-05-13T15:15:09+00:00","author":{"@id":"http:\/\/adc-dao.com\/wordpress\/#\/schema\/person\/30c434ee2fe6b91acb878ee61119cf52"},"breadcrumb":{"@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#primaryimage","url":"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png","contentUrl":"http:\/\/adc-dao.com\/wordpress\/wp-content\/uploads\/2020\/05\/2020-05-13_09h44_56.png","width":1024,"height":680},{"@type":"BreadcrumbList","@id":"https:\/\/adc-dao.com\/wordpress\/programmation-revit-analyse-du-squelette-dune-extension-revit\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"http:\/\/adc-dao.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Programmation Revit &#8211; Analyse du squelette d&rsquo;une extension Revit"}]},{"@type":"WebSite","@id":"http:\/\/adc-dao.com\/wordpress\/#website","url":"http:\/\/adc-dao.com\/wordpress\/","name":"Blogue ADC-DAO","description":"Personnalisation et programmation AutoCAD\/Revit","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"http:\/\/adc-dao.com\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"http:\/\/adc-dao.com\/wordpress\/#\/schema\/person\/30c434ee2fe6b91acb878ee61119cf52","name":"Andr\u00e9 Dagenais","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/secure.gravatar.com\/avatar\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/87d05f96d9500d9db4f8ab6ae1d8595c048e2e089694944af6f7ee77fe75de14?s=96&d=mm&r=g","caption":"Andr\u00e9 Dagenais"},"url":"http:\/\/adc-dao.com\/wordpress\/author\/andred\/"}]}},"_links":{"self":[{"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/posts\/376","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/comments?post=376"}],"version-history":[{"count":13,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/posts\/376\/revisions"}],"predecessor-version":[{"id":398,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/posts\/376\/revisions\/398"}],"wp:attachment":[{"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/media?parent=376"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/categories?post=376"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/adc-dao.com\/wordpress\/wp-json\/wp\/v2\/tags?post=376"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}