SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Generated by Jive SBS on 2014-09-05-05:00 
1 
luc desruelle's Blogue: Partie 3/3 : Distribuer 
son Framework de projet, modèle de projet 
personnalisé, avec le gestionnaire de projet 
LabVIEW - version distribution personnalisée 
Publié par luc desruelle 5 sept. 2014 
I] Introduction II] Fonctionnement "standard" du gestionnaire de projet III] Ajouter des options personnalisées 
au gestionnaire de projet VI] Exemple distribution projet personnalisée V] Synthèse des différentes méthodes I] 
Introduction Sur un nouveau projet, afin de ne pas repartir d'une feuille blanche, les développeurs utilisent leur 
Framework de projet, qui correspond à leur structure de programme personnalisée.Depuis la version LabVIEW 2012 
un gestionnaire de projet permet d'ajouter ses modèles et de les distribuer facilement. voir Partie 2/3 : Distribuer 
son Framework, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version Simple Le modèle 
"simple" utilise la fenêtre de gestion "standard" de NI LabVIEW pour générer et modifier le code du projet. 
Si comme moi, cete fenêtre ne correspond pas "entierement" à vos attentes, par exemple 
"elle ne fait que copier" l'arborescence du projet; mais je voudrai : 
• Renommer des dossiers suivant des options à ajouter 
• Ajouter le nom de application; le client; le copyright;... 
• Modifier la distribution du projet pour la génération de l'exe; 
• Modifier les options du build 
• Modifier le fichier ini 
• ... 
Nous allons donc voir comment modifier les options de génération de la fenêtre de 
distribution de projet LabVIEW. 
• En utilisant le dossier scripting 
• En modifiant via une class Enfant la "SpecPage" 
Et pour cela nous allons :
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
2 
• Créer une class <MetaDataClass> enfant de la class MetaDataObjMetaDataObj.lvclass 
• Créer une nouvelle "SpecPage.vi", qui va copier les nouvelles spécifications de la MetaDataClass 
personnalisée 
• Créer un code qui va réaliser les actions de personnalisation 
Avant de commencer, il faut bien comprendre le fonctionnement du gestionnaire de projet 
de LabVIEW. 
II] Fonctionnement "standard" du gestionnaire 
de projet 
Le gestionnaire de projet utilise le code LabVIEW XXXXresourcedialogNewProjectWizard 
Project CopyingCreateUserProject.vi Et il est configuré par les fichiers XML des projets.
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
3 
Il repose sur une structure « state machine » classique ; avec des états et des 
transitions via un file d’attente ; ou FIFO Queue.
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
4 
initialisation des données Case "Init Spec Page" du générateur de projet : Les 
données de spécification du projet sont passées dans la « Data » privée d’une 
class « MetaData.class »
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
5 
Lors de la lecture du fichier XML du projet, si aucune class fille n’est spécifiée, le 
gestionnaire de projet va charger la class Parent, et ouvrira la fenêtre « standard 
» de spécification du projet 
case "Open Spec Page" : lecture via property "Read Spec Page.vi" du chemin de la page de 
spécification
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
6 
Après la page de spécification, la distribution du projet est réalisée par « 
createuserpojet.vi» qui exécute les actions de duplication du projet, selon les données de 
la class « MetaData.class ». 
Pour résumer :
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
7 
III] Ajouter des options personnalisées au 
gestionnaire de projet 
Nous allons utiliser trois tags optionnels du fichier XML du projet 
XML Tag 
Description 
Example Project 
Optional Tags
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
8 
<MetaDataClass> 
Specifies the path to a class 
that defines custom behavior 
for the user interface of the 
second page of the Create 
Project dialog box. 
Actor Framework 
<CustomVIMode> 
Determines when to run a 
custom VI during the project 
creation process. Select from 
the following values: 
• None—No custom VI 
runs. If you omit the 
<CustomVIMode> tag, 
None is the default value. 
• AfterPage1—After the 
user selects a project, 
the Create Project 
dialog box closes, and 
the custom VI runs. 
• AfterPage2NoUI—After 
the second page of 
the Create Project 
dialog box creates 
the project, the 
custom VI runs and 
completes. Then, 
the Create Project 
dialog box closes. 
• AfterPage2WithUI— 
After the Create 
Project dialog box 
creates the project, 
the Create Project 
dialog box closes, 
and the custom VI 
runs. The custom VI is 
responsible for showing 
or hiding its panel. 
Simple State Machine, 
Blank VI, Actor Framework 
<CustomVIPath> 
Specifies the path to the 
custom VI you want to 
run during the project 
creation process. If you set 
Actor Framework
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
9 
the <CustomVIMode> tag to 
None, LabVIEW ignores the 
<CustomVIPath> tag. 
Avec les valeurs : 
• <MetaDataClass> : chemin relatif de la class fille. Je vous propose de partir de l'exemple de l'Actor 
Framework, afin de créer la votre 
• <CustomVIMode> : AfterPage2WithNoUI qui va donc permettre de réaliser des actions personnalisées via 
le vi <CustomVIPath> 
Nous pouvons avoir 
<CustomVIMode>AfterPage2NoUI1</CustomVIMode> 
<CustomVIPath>scripting/MetaDataObj/PostCopyScripting.vi</CustomVIPath> 
<MetaDataClass>scripting/MetaDataObj/MaMetaDataObj.lvclass</MetaDataClass> 
Pour information, à partir de la version LabVIEW 2013 il existe des exemples de template, 
vit, pour 
• la page de spécification : SpecPage.vi 
• le code de "post copy scripting", code personnalisé après la code générique de copie : 
PostCopyScripting.vit 
VI] Exemple distribution projet personnalisée 
Lors de l'initialisation des données Case "Init Spec Page" du générateur de projet 
: suite lecture du fichier XML du projet, le gestionnaire de projet va charger la class 
MaMEtaDataObj.lvclass
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Dans le case "Open Spec Page" : lecture via property "Read Spec Page.vi" du chemin de la 
page de spécification. 
Generated by Jive SBS on 2014-09-05-05:00 
10 
Ouverture de la page de spécification personnalisée. 
Après la validation de la page de spécification, la distribution du projet est réalisée par « 
createuserpojet.vi» qui exécute les actions de duplication du projet, selon les données de 
la class « MetaData.class ». 
Dans le case "Open Custom Vi" : l'option <AfterPage2NoUI> du fichier XML va permettre de 
réaliser le code de <CustomVIPath> PostCopyScritping.vi
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
11 
V] Synthèse des différentes méthodes
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
12
luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le 
gestionnaire de projet LabVIEW - version distribution personnalisée 
Generated by Jive SBS on 2014-09-05-05:00 
13 
Luc Desruelle | 
| Voir mon profil 
CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW 
CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW 
Contact , About me. , Google+. , Twitter. 
Pièces jointes: 
• CustomProjectTemplate Tree.vi (14.5 K) 
265 Visualiser Tags : labview, custom, framework, france, distribution, de, template, architect, projet, desruelle, 
certifié, développeur, luc, grenoble, chambery, distribuer, son, anncey, modele, personnalisé, génération 
Il n'y a aucun commentaire sur cette publication

Weitere ähnliche Inhalte

Was ist angesagt?

Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Nazih Heni
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8Microsoft
 
20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache Maven20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache MavenArnaud Héritier
 
MVVM par Karim PIerre Maalej
MVVM par Karim PIerre MaalejMVVM par Karim PIerre Maalej
MVVM par Karim PIerre MaalejCocoaHeads France
 
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL Microsoft
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hoodsvuillet
 
P6 composants avancés
P6 composants avancésP6 composants avancés
P6 composants avancésLilia Sfaxi
 
JSF2, Primefaces, Primefaces Mobile
JSF2, Primefaces, Primefaces MobileJSF2, Primefaces, Primefaces Mobile
JSF2, Primefaces, Primefaces MobileSylla Mamoudou
 
Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Microsoft
 
J2eeintro
J2eeintroJ2eeintro
J2eeintromedbmb
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...ENSET, Université Hassan II Casablanca
 

Was ist angesagt? (20)

jQuery vs AngularJS
jQuery vs AngularJS jQuery vs AngularJS
jQuery vs AngularJS
 
Sonar-Hodson-Maven
Sonar-Hodson-MavenSonar-Hodson-Maven
Sonar-Hodson-Maven
 
Cours wpf avancé
Cours wpf avancéCours wpf avancé
Cours wpf avancé
 
Support cours angular
Support cours angularSupport cours angular
Support cours angular
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"
 
10 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 810 tips pour améliorer les performances de vos applications Windows 8
10 tips pour améliorer les performances de vos applications Windows 8
 
20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache Maven20081113 - Nantes Jug - Apache Maven
20081113 - Nantes Jug - Apache Maven
 
MVVM par Karim PIerre Maalej
MVVM par Karim PIerre MaalejMVVM par Karim PIerre Maalej
MVVM par Karim PIerre Maalej
 
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL
Créer des jeux 3D pour le web et pour le Windows Store avec BabylonJS/WebGL
 
Introducthion mvvm avec wpf
Introducthion mvvm avec wpfIntroducthion mvvm avec wpf
Introducthion mvvm avec wpf
 
WPF MVVM
WPF MVVMWPF MVVM
WPF MVVM
 
Présentation WPF
Présentation  WPFPrésentation  WPF
Présentation WPF
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hood
 
P6 composants avancés
P6 composants avancésP6 composants avancés
P6 composants avancés
 
JSF2, Primefaces, Primefaces Mobile
JSF2, Primefaces, Primefaces MobileJSF2, Primefaces, Primefaces Mobile
JSF2, Primefaces, Primefaces Mobile
 
2 ModéLe Mvc
2 ModéLe Mvc2 ModéLe Mvc
2 ModéLe Mvc
 
Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11
 
J2eeintro
J2eeintroJ2eeintro
J2eeintro
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 

Andere mochten auch

Darwin appliqué à LabVIEW : l’évolution de la gestion des données
Darwin appliqué à LabVIEW : l’évolution de la gestion des donnéesDarwin appliqué à LabVIEW : l’évolution de la gestion des données
Darwin appliqué à LabVIEW : l’évolution de la gestion des donnéesLuc Desruelle
 
Exemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewExemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewLuc Desruelle
 
Les fenetres-labview-ne-sont-pas-toutes-rectangulaires
Les fenetres-labview-ne-sont-pas-toutes-rectangulairesLes fenetres-labview-ne-sont-pas-toutes-rectangulaires
Les fenetres-labview-ne-sont-pas-toutes-rectangulairesLuc Desruelle
 
Exemple code oop_labview
Exemple code oop_labviewExemple code oop_labview
Exemple code oop_labviewLuc Desruelle
 
Exemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewExemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewLuc Desruelle
 
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...Luc Desruelle
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Luc Desruelle
 
Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012SiemensFrance
 
Livre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et ApplicationsLivre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et ApplicationsLuc Desruelle
 
Livre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applicationsLivre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applicationsLuc Desruelle
 
Getting started with LabVIEW
Getting started with LabVIEWGetting started with LabVIEW
Getting started with LabVIEWYomna Eid
 
Wincc plant-intelligence
Wincc plant-intelligenceWincc plant-intelligence
Wincc plant-intelligenceAbdoul Karim
 
Certificate of completion
Certificate of completion Certificate of completion
Certificate of completion Bilal Jamjama
 
SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13Mohsen Sadok
 
Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01Mss Med
 
Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016Soufiane KALLIDA
 
Exemple de CV professionnel
Exemple de CV professionnelExemple de CV professionnel
Exemple de CV professionnelRAMZI EL IDRISSI
 
Presentation Android
Presentation AndroidPresentation Android
Presentation AndroidJean Collas
 

Andere mochten auch (20)

Darwin appliqué à LabVIEW : l’évolution de la gestion des données
Darwin appliqué à LabVIEW : l’évolution de la gestion des donnéesDarwin appliqué à LabVIEW : l’évolution de la gestion des données
Darwin appliqué à LabVIEW : l’évolution de la gestion des données
 
Exemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewExemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labview
 
Les fenetres-labview-ne-sont-pas-toutes-rectangulaires
Les fenetres-labview-ne-sont-pas-toutes-rectangulairesLes fenetres-labview-ne-sont-pas-toutes-rectangulaires
Les fenetres-labview-ne-sont-pas-toutes-rectangulaires
 
Exemple code oop_labview
Exemple code oop_labviewExemple code oop_labview
Exemple code oop_labview
 
Exemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labviewExemple de-code-oop-avec-labview
Exemple de-code-oop-avec-labview
 
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...
« LabVIEW : programmation et applications » ou comment apprendre à utiliser L...
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...
 
Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012Pictures of the Future Siemens Printemps 2012
Pictures of the Future Siemens Printemps 2012
 
Livre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et ApplicationsLivre LabVIEW 2015 : Programme et Applications
Livre LabVIEW 2015 : Programme et Applications
 
Livre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applicationsLivre LabVIEW : Programmation et applications
Livre LabVIEW : Programmation et applications
 
Getting started with LabVIEW
Getting started with LabVIEWGetting started with LabVIEW
Getting started with LabVIEW
 
Wincc plant-intelligence
Wincc plant-intelligenceWincc plant-intelligence
Wincc plant-intelligence
 
Certificate of completion
Certificate of completion Certificate of completion
Certificate of completion
 
SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13SCADA Labview PLC TIA portal v13
SCADA Labview PLC TIA portal v13
 
Rapport cimat
Rapport cimatRapport cimat
Rapport cimat
 
Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01Colaimo 140330083749-phpapp01
Colaimo 140330083749-phpapp01
 
Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016Rapport de projet de fin d'études - SIEMENS 2016
Rapport de projet de fin d'études - SIEMENS 2016
 
Exemple de CV professionnel
Exemple de CV professionnelExemple de CV professionnel
Exemple de CV professionnel
 
Presentation Android
Presentation AndroidPresentation Android
Presentation Android
 
Decodage d'adresse
Decodage d'adresseDecodage d'adresse
Decodage d'adresse
 

Ähnlich wie Distribuer Framework LabVIEW Personnalise par Luc Desruelle

Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationStéphane Traumat
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreStéphane Traumat
 
Configurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfConfigurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfHamida Rebai Trabelsi
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Ayoub Rouzi
 
SLIDES-625.1.1-IDL-4-build tools maven.pdf
SLIDES-625.1.1-IDL-4-build tools maven.pdfSLIDES-625.1.1-IDL-4-build tools maven.pdf
SLIDES-625.1.1-IDL-4-build tools maven.pdfArouNa3
 
Presentation of GWT 2.4 (PDF version)
Presentation of GWT 2.4 (PDF version)Presentation of GWT 2.4 (PDF version)
Presentation of GWT 2.4 (PDF version)Celinio Fernandes
 
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur Azure
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur AzureModèles d'Azure Resource Manager: Améliorer vos déploiements sur Azure
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur AzureStephane Lapointe
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLICréation de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLIDenys Chamberland
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisésavec Power BI Visuals CLICréation de visuels personnalisésavec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLIDenys Chamberland
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimLaurent Broudoux
 
Distribuer une librairie via maven
Distribuer une librairie via mavenDistribuer une librairie via maven
Distribuer une librairie via mavenFranck SIMON
 
Créer et intégrer son thème PrestaShop
Créer et intégrer son thème PrestaShopCréer et intégrer son thème PrestaShop
Créer et intégrer son thème PrestaShopPrestaShop
 
Prise en main de Jhipster
Prise en main de JhipsterPrise en main de Jhipster
Prise en main de JhipsterKokou Gaglo
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesNoel GUILBERT
 

Ähnlich wie Distribuer Framework LabVIEW Personnalise par Luc Desruelle (20)

Présentation1
Présentation1Présentation1
Présentation1
 
Presentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub FoundationPresentation du socle technique Java open source Scub Foundation
Presentation du socle technique Java open source Scub Foundation
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libre
 
Configurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfConfigurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdf
 
Universitélang scala tools
Universitélang scala toolsUniversitélang scala tools
Universitélang scala tools
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
 
SLIDES-625.1.1-IDL-4-build tools maven.pdf
SLIDES-625.1.1-IDL-4-build tools maven.pdfSLIDES-625.1.1-IDL-4-build tools maven.pdf
SLIDES-625.1.1-IDL-4-build tools maven.pdf
 
Presentation of GWT 2.4 (PDF version)
Presentation of GWT 2.4 (PDF version)Presentation of GWT 2.4 (PDF version)
Presentation of GWT 2.4 (PDF version)
 
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur Azure
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur AzureModèles d'Azure Resource Manager: Améliorer vos déploiements sur Azure
Modèles d'Azure Resource Manager: Améliorer vos déploiements sur Azure
 
tp-spring.pdf
tp-spring.pdftp-spring.pdf
tp-spring.pdf
 
tp-spring.pdf
tp-spring.pdftp-spring.pdf
tp-spring.pdf
 
Gradle_LyonJUG
Gradle_LyonJUGGradle_LyonJUG
Gradle_LyonJUG
 
[Tuto] Big datatrack : Web Tracker
[Tuto] Big datatrack : Web Tracker[Tuto] Big datatrack : Web Tracker
[Tuto] Big datatrack : Web Tracker
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLICréation de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLI
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisésavec Power BI Visuals CLICréation de visuels personnalisésavec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLI
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - Ensim
 
Distribuer une librairie via maven
Distribuer une librairie via mavenDistribuer une librairie via maven
Distribuer une librairie via maven
 
Créer et intégrer son thème PrestaShop
Créer et intégrer son thème PrestaShopCréer et intégrer son thème PrestaShop
Créer et intégrer son thème PrestaShop
 
Prise en main de Jhipster
Prise en main de JhipsterPrise en main de Jhipster
Prise en main de Jhipster
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiques
 

Distribuer Framework LabVIEW Personnalise par Luc Desruelle

  • 1. Generated by Jive SBS on 2014-09-05-05:00 1 luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Publié par luc desruelle 5 sept. 2014 I] Introduction II] Fonctionnement "standard" du gestionnaire de projet III] Ajouter des options personnalisées au gestionnaire de projet VI] Exemple distribution projet personnalisée V] Synthèse des différentes méthodes I] Introduction Sur un nouveau projet, afin de ne pas repartir d'une feuille blanche, les développeurs utilisent leur Framework de projet, qui correspond à leur structure de programme personnalisée.Depuis la version LabVIEW 2012 un gestionnaire de projet permet d'ajouter ses modèles et de les distribuer facilement. voir Partie 2/3 : Distribuer son Framework, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version Simple Le modèle "simple" utilise la fenêtre de gestion "standard" de NI LabVIEW pour générer et modifier le code du projet. Si comme moi, cete fenêtre ne correspond pas "entierement" à vos attentes, par exemple "elle ne fait que copier" l'arborescence du projet; mais je voudrai : • Renommer des dossiers suivant des options à ajouter • Ajouter le nom de application; le client; le copyright;... • Modifier la distribution du projet pour la génération de l'exe; • Modifier les options du build • Modifier le fichier ini • ... Nous allons donc voir comment modifier les options de génération de la fenêtre de distribution de projet LabVIEW. • En utilisant le dossier scripting • En modifiant via une class Enfant la "SpecPage" Et pour cela nous allons :
  • 2. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 2 • Créer une class <MetaDataClass> enfant de la class MetaDataObjMetaDataObj.lvclass • Créer une nouvelle "SpecPage.vi", qui va copier les nouvelles spécifications de la MetaDataClass personnalisée • Créer un code qui va réaliser les actions de personnalisation Avant de commencer, il faut bien comprendre le fonctionnement du gestionnaire de projet de LabVIEW. II] Fonctionnement "standard" du gestionnaire de projet Le gestionnaire de projet utilise le code LabVIEW XXXXresourcedialogNewProjectWizard Project CopyingCreateUserProject.vi Et il est configuré par les fichiers XML des projets.
  • 3. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 3 Il repose sur une structure « state machine » classique ; avec des états et des transitions via un file d’attente ; ou FIFO Queue.
  • 4. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 4 initialisation des données Case "Init Spec Page" du générateur de projet : Les données de spécification du projet sont passées dans la « Data » privée d’une class « MetaData.class »
  • 5. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 5 Lors de la lecture du fichier XML du projet, si aucune class fille n’est spécifiée, le gestionnaire de projet va charger la class Parent, et ouvrira la fenêtre « standard » de spécification du projet case "Open Spec Page" : lecture via property "Read Spec Page.vi" du chemin de la page de spécification
  • 6. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 6 Après la page de spécification, la distribution du projet est réalisée par « createuserpojet.vi» qui exécute les actions de duplication du projet, selon les données de la class « MetaData.class ». Pour résumer :
  • 7. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 7 III] Ajouter des options personnalisées au gestionnaire de projet Nous allons utiliser trois tags optionnels du fichier XML du projet XML Tag Description Example Project Optional Tags
  • 8. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 8 <MetaDataClass> Specifies the path to a class that defines custom behavior for the user interface of the second page of the Create Project dialog box. Actor Framework <CustomVIMode> Determines when to run a custom VI during the project creation process. Select from the following values: • None—No custom VI runs. If you omit the <CustomVIMode> tag, None is the default value. • AfterPage1—After the user selects a project, the Create Project dialog box closes, and the custom VI runs. • AfterPage2NoUI—After the second page of the Create Project dialog box creates the project, the custom VI runs and completes. Then, the Create Project dialog box closes. • AfterPage2WithUI— After the Create Project dialog box creates the project, the Create Project dialog box closes, and the custom VI runs. The custom VI is responsible for showing or hiding its panel. Simple State Machine, Blank VI, Actor Framework <CustomVIPath> Specifies the path to the custom VI you want to run during the project creation process. If you set Actor Framework
  • 9. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 9 the <CustomVIMode> tag to None, LabVIEW ignores the <CustomVIPath> tag. Avec les valeurs : • <MetaDataClass> : chemin relatif de la class fille. Je vous propose de partir de l'exemple de l'Actor Framework, afin de créer la votre • <CustomVIMode> : AfterPage2WithNoUI qui va donc permettre de réaliser des actions personnalisées via le vi <CustomVIPath> Nous pouvons avoir <CustomVIMode>AfterPage2NoUI1</CustomVIMode> <CustomVIPath>scripting/MetaDataObj/PostCopyScripting.vi</CustomVIPath> <MetaDataClass>scripting/MetaDataObj/MaMetaDataObj.lvclass</MetaDataClass> Pour information, à partir de la version LabVIEW 2013 il existe des exemples de template, vit, pour • la page de spécification : SpecPage.vi • le code de "post copy scripting", code personnalisé après la code générique de copie : PostCopyScripting.vit VI] Exemple distribution projet personnalisée Lors de l'initialisation des données Case "Init Spec Page" du générateur de projet : suite lecture du fichier XML du projet, le gestionnaire de projet va charger la class MaMEtaDataObj.lvclass
  • 10. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Dans le case "Open Spec Page" : lecture via property "Read Spec Page.vi" du chemin de la page de spécification. Generated by Jive SBS on 2014-09-05-05:00 10 Ouverture de la page de spécification personnalisée. Après la validation de la page de spécification, la distribution du projet est réalisée par « createuserpojet.vi» qui exécute les actions de duplication du projet, selon les données de la class « MetaData.class ». Dans le case "Open Custom Vi" : l'option <AfterPage2NoUI> du fichier XML va permettre de réaliser le code de <CustomVIPath> PostCopyScritping.vi
  • 11. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 11 V] Synthèse des différentes méthodes
  • 12. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 12
  • 13. luc desruelle's Blogue: Partie 3/3 : Distribuer son Framework de projet, modèle de projet personnalisé, avec le gestionnaire de projet LabVIEW - version distribution personnalisée Generated by Jive SBS on 2014-09-05-05:00 13 Luc Desruelle | | Voir mon profil CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW Contact , About me. , Google+. , Twitter. Pièces jointes: • CustomProjectTemplate Tree.vi (14.5 K) 265 Visualiser Tags : labview, custom, framework, france, distribution, de, template, architect, projet, desruelle, certifié, développeur, luc, grenoble, chambery, distribuer, son, anncey, modele, personnalisé, génération Il n'y a aucun commentaire sur cette publication