IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Ajout d'un Pattern KML dans un exe


Sujet :

C#

  1. #1
    Membre confirmé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 701
    Points : 597
    Points
    597
    Par défaut Ajout d'un Pattern KML dans un exe
    Salut,

    Je suis en train de bricoler une application qui fait des requêtes ICMP tout en ce géolocalisant via GPS.
    Bref !

    Je cherche à sauvegarder mes résultats directement dans un KML, J'ai déjà le pattern. Mais j'ai un trou méthodologique pour qu'il soit intégré directement dans mon application.

    Aujourd'hui je fais une chaîne de mes coordonnées, puis insert mon résultat entre deux chaînes de caractères. (c'est moche mais fonctionnel)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    string top = @"<?xml version=""1.0"" encoding=""UTF-8""?>
    <kml xmlns=""http://www.opengis.net/kml/2.2"" xmlns:gx=""http://www.google.com/kml/ext/2.2"" xmlns:kml=""http://www.opengis.net/kml/2.2"" xmlns:atom=""http://www.w3.org/2005/Atom"">
    <Document>
    	<name>Toto</name>
    	<Style id=""style"">
    		<LineStyle>
    			<color>ffff55aa</color>
    			<width>7</width>
    		</LineStyle>
    	</Style>
    	<StyleMap id=""stylemap_id0"">
    		<Pair>
    			<key>normal</key>
    			<styleUrl>#style</styleUrl>
    		</Pair>
    		<Pair>
    			<key>highlight</key>
    			<styleUrl>#style0</styleUrl>
    		</Pair>
    	</StyleMap>
    	<Style id=""style0"">
    		<LineStyle>
    			<color>ffff55aa</color>
    			<width>7</width>
    		</LineStyle>
    	</Style>
    	<Placemark>
    		<visibility>0</visibility>
    		<styleUrl>#stylemap_id0</styleUrl>
    		<LineString>
    			<extrude>1</extrude>
    			<altitudeMode>relativeToGround</altitudeMode>
    			<coordinates>";
     
    string bottom = @"</coordinates>
    		</LineString>
    	</Placemark>
    </Document>
    </kml>";
     
    string OUT = top + Coord + bottom ;
    Je me rappel sur un vieux projet avoir pu "serialiser" un pattern XML dans mon application et ensuite avoir fait un append dans les champs souhaité.
    Mais la mémoire me joue des tours et je ne sais plus comment m'y prendre.

    J'aimerais que mon application soit autonome dans la création du KML, il ne faudrait pas qu'un second fichier "traine" avec l'executable pour lui servir de référence XML.

    Auriez-vous un exemple ou un tutorial qui traiterait du sujet ? Ou encore mieux une méthode différente car je m'égare peut être.

    Merci pour votre aide.
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !


    Albert Einstein

  2. #2
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    Mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2007
    Messages : 2 954
    Points : 14 979
    Points
    14 979
    Par défaut
    Salut

    Plusieurs possibilités si tu as besoin d'intégrer ton fichier à l'exécutable .

    La première, intégrer ton fichier à l'exécutable et le récupérer sous forme de Stream :

    • sélectionne ton fichier sous Visual Studio, puis dans la fenêtre propriété, partie « Build Action », choisis « Embedded Resource » ;
    • ensuite tu peux charger ton fichier dans ton code via son namespace (s'il est à la racine du projet, alors son namespace est le default namespace du projet, sinon tu y ajoutes le ou les répertoires dans lesquels il se situe) : Assembly.GetExecutingAssembly().GetManifestResourceStream("MyDefaultNamespace.MyEmbeddedFile.txt"). Dans mon exemple, à toi ensuite de voir si ton fichier se situe dans l'assembly en cours d'exécution ou une autre, je te laisse t'en dépatouiller .

    La seconde, plus simple pour l'accès :

    • utiliser un fichier Resources (.resx) que tu passes en mode « Files » (c'est-à-dire qu'il contiendra des fichiers plutôt que des chaînes de caractère, son utilisation par défaut et la plus courante) ;
    • tu ajoutes ton fichier à ce fichier Resources ;
    • pour y accéder et récupérer directement un string : MyDefaultNamespace.Resources.MyEmbeddedFile (là j'ai mis mon .resx dans un dossier Resources).

    Max

    P.-S. Désolé pour mon franglais, mais je ne connais et n'utilise Visual Studio qu'en anglais depuis des années, de plus mon proxy bloque l'envoi de captures .

  3. #3
    Membre confirmé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 701
    Points : 597
    Points
    597
    Par défaut
    Merci j'essais ça !
    La théorie, c'est quand on sait tout et que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et personne ne sait pourquoi !


    Albert Einstein

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/10/2004, 16h51
  2. Réponses: 4
    Dernier message: 02/06/2004, 12h19
  3. [Fichier] Ajout des lignes de doc dans arraylist
    Par 3adoula dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 29/04/2004, 23h41
  4. modifier l'adresse d'un dll dans un .exe
    Par Mr Meuble dans le forum Windows
    Réponses: 4
    Dernier message: 02/03/2004, 17h39
  5. Ajout de bouton de commandes dans la barre de menus
    Par vanessaf22 dans le forum IHM
    Réponses: 9
    Dernier message: 21/07/2003, 12h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo