CmapGpsu/main.cpp
De Wiki EELL.
Version du 18 décembre 2010 à 17:00 par JPL (discuter | contributions)
/*O NOM DU FICHIER: Main.c PROJET INITIAL: CmapGpsu Convertisseur de route CmapECS vers GPSUtility DOSSIER: CmapGpsu PROGRAMMEUR: DATE: 20 fevrier 2004 MODIFICATIONS: le: 29/01/2010 par ... objet de la modification: Compil pour Win32 Console UNICODE Windows 7 le: ../../.. par */ /*D main ----------------------------------------------------------------------------- ACTION: Fonction d'entrée pour SHELL MS-DOS. A ouvrir avec la commande cmd.exe Vérifie qu'un fichier est entre en paramètre et qu'il est accessible en lecture. Vérifie qu'un deuxième fichier est entré en paramètre, et s'il est accessible en lecture, demande s'il faut l'écraser. Noter que cette deuxième fonction n'est pas prise en compte dans le programme en version d'origine 1.00 Le programme peut être compilé en commentaires FR (française) ou, par défaut en commentaires EN (anglaise). SYNTAXE: #include <CmapGpsu.h> extern int main(int argc, char *argv[]); PORTABILITE: x86 Win32_Console UNICODE DESCRIPTION: int: nombre de paramètres de la ligne de commande *argv[]: pointeur sur les arguments de la ligne de commande VALEUR RETOURNEE: Quitte le programme CmapGpsu et renvoie la valeur -1 au programme d'appel en cas d'erreur de parametrage. 0 en cas de succès. VOIR AUSSI: (anciens fichiers Win16) Les fichier: !.c pour la génération du fichier CmapGpsu.h par l'exécutable MakeHead (Nécessite de disposer de l'exécutable make). Sinon intervenir avec un éditeur sur le fichier CmapGpsu.h */ /*H // Main.c: extern int main(int argc, char *argv[]); */ // #define TESTS_U #ifdef TESTS_U #include "..\..\include\CmapGpsu.h" #define EN #define FR #endif #ifndef TESTS_U #include "..\include\CmapGpsu.h" #endif #include <stdio.h> #include <stdlib.h> #include <io.h> #include <conio.h> /*O Programme shell (sous MSDOS ou UNIX) */ int main(int argc, char *argv[]) { //int TRUE = 1; //int FALSE = 0; #define TRUE 1; #define FALSE 0; int reponse = TRUE; extern int errno; /*O Préciser l'action du convertisseur */ #ifdef FR printf("\nConvertisseur de route CmapEcs vers GPS-Utility\n\n"); #endif #ifdef EN printf("\nCmapEcs route to GPS-Utility\n\n"); #endif /*O Si la syntaxe n'est pas correcte: "Executable Source_CmapRoute" */ if (argc < 2) /*O Alors Préciser la syntaxe et quitter sur erreur.*/ { #ifdef FR printf("Syntaxe: %s Route(cmap)\n",argv[0]); printf("Appuyer sur la touche 'Retour Chariot' pour quitter.\n"); #endif #ifdef EN printf("Syntax: %s Route(cmap)\n",argv[0]); printf("Press 'Enter' to quit.\n"); #endif getc(stdin); exit(-1); } /*O Si le fichier source n'existe pas Alors le préciser et quitter sur erreur.*/ if (argv[1]==NULL || _access(argv[1],04)!=0) // N'existe pas ou n'est pas accessible en lecture { #ifdef FR printf("Le fichier source \"%s\" n'existe pas, verifiez le chemin.\n",argv[1]); printf("Appuyer sur la touche 'Retour Chariot' pour quitter.\n"); #endif #ifdef EN printf("Source file \"%s\" does not exist, please verify the path.\n",argv[1]); printf("Press 'Enter' to quit.\n"); #endif getc(stdin); exit(-1); } /*O Si le fichier texte Dest existe Alors demander si il faut l'ecraser ? */ if (argv[2]!=NULL && _access(argv[2],02)==0) // Existe et est accessible en ecriture { char clavier; //reponse = 1; #ifdef FR printf("Le fichier %s a ete trouve, faut-il l'ecraser ? (o=oui) :", argv[2]); #endif #ifdef EN printf("File %s is found, update this file ? (y=yes)", argv[2]); #endif clavier = getc(stdin); if (clavier=='o' || clavier=='O' || clavier=='y' || clavier=='Y') { reponse = TRUE; printf("\n"); } else reponse = FALSE; } /*O Si la reponse est non, Alors quitter sur arrêt utilisateur ! */ if (! reponse) exit(0); /*O Sinon executer le programme */ else { #ifndef TESTS_U CmapGpsu(argc, argv); #ifdef FR printf("Sortie normale ... OK, appuyer sur 'Retour Chariot' pour quitter."); #endif #ifdef EN printf("Normal Exit ... OK, press 'Enter' to exit."); #endif #endif #ifdef TESTS_U #ifdef FR printf("Sortie normale, tous fichiers accessibles.\nAppuyer sur une touche pour quitter.\n"); #endif #ifdef EN printf("Normal exit, all files found.\nPress 'Enter' to exit\n"); #endif #endif getc(stdin); } return 0; }