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 :

Compilation "Crystal disk info"


Sujet :

C++

  1. #1
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 011
    Points : 2 078
    Points
    2 078
    Par défaut Compilation "Crystal disk info"
    Bonjour
    Par curiosité j'ai compilé avec Microsoft Visual studio community 2015 un utilitaire disque open-source Crystal Disk info

    Il n'y a pas d'erreurs lors du build, l'exécutable est bien généré mais quand j'essaye de le lancer il y a un message d'erreur "not found 'Graph.html'".

    Comme j'ai déjà eu ce problème avec d'autres sources (fichier xyz.html qui n'est pas trouvé au moment du lancement de l'exécutable) je ne pense plus comme initialement que ce fichier est manquant dans les sources mais qu'il s'agit d'autre choses.
    Des recherches Google semble m'indiquer que ce serait lié aux "MFC" je ne sais pas si les MFC sont installées et opérationnelles ou non (j'ai trouvé des informations contradictoires pour l'édition Community - a tout hasard j'ai créé un projet MFC (vide) dans VS Community 2015 qui compile sans erreur).

    Une idée ?

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 059
    Points : 12 095
    Points
    12 095
    Par défaut
    Il y a bien l'utilisation de 'Graph.html' quelque part dans les sources du programme (via fichier de configuration ou en dur dans le code), non ?

    Je pense que le fichier n'est simplement pas copié au bon endroit.

    Et l'endroit, c'est fonction de comment il est utilisé dans le code source.

  3. #3
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 011
    Points : 2 078
    Points
    2 078
    Par défaut Compil CrystalDiskInfo
    Bonjour,
    Quand je recherche dans le code source (avec recherche dans les fichiers ) "Graph.html"
    La réponse est :
    C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.h(33):#define GRAPH_DIALOG
    #define GRAPH_DIALOG _T("Graph.html")

    Si je recherche maintenant "GRAPH_DIALOG"
    La réponse est :
    Rechercher tout "GRAPH_DIALOG", Sous-dossiers, Résultats de la recherche 1, Solution complète, ""

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.h(33):#define GRAPH_DIALOG				_T("Graph.html")
      C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.h(34):#define GRAPH_DIALOG_IE8			_T("Graph8.html")
      C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.cpp(223):		m_GraphDlgPath.Format(_T("%s\\") DIALOG_DIR GRAPH_DIALOG_IE8, tmp);
      C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.cpp(225):		if(! IsFileExistEx(m_GraphDlgPath, GRAPH_DIALOG_IE8))		{	return FALSE;	}
      C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.cpp(229):		m_GraphDlgPath.Format(_T("%s\\") DIALOG_DIR GRAPH_DIALOG, tmp);
      C:\Users\Gabriel\Downloads\CrystalDiskInfo\DiskInfo.cpp(230):		if(! IsFileExistEx(m_GraphDlgPath, GRAPH_DIALOG))			{	return FALSE;	}
      Lignes correspondantes : 6    Fichiers correspondants : 2    Nombre de fichiers recherchés : 73
    Si je cherche dans le répertoire racine et tous les sous-répertoires de la solution (avec un utilitaire FindMyfiles) le fichier « Graph.html » -> il n’est pas présent. Donc pas de probleme d'emplacement ou de path.


    Nota :
    Editeur de crystaldiskinfo
    http://crystalmark.info/software/Cry...o/index-e.html
    Page de téléchargement du code source de CrystalDiskInfo 6.8.2
    http://crystalmark.info/download/index-e.html cliquer sur source code dans le tableau colonne de droite (texte « 0.5MB ») ;
    Le fichier téléchargé est « CrystalDiskInfo6_8_2Src.zip » 522ko

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 059
    Points : 12 095
    Points
    12 095
    Par défaut
    Vérifiez le code de la fonction "IsFileExistEx".
    Votre programme cherche un fichier à un endroit bien particulier.
    Vérifiez la documentation du projet, il y a des chances que ce fichier soit généré par un autre exécutable du projet ou par une partie spécifique du programme que vous n'avez pas encore utilisé.

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 011
    Points : 2 078
    Points
    2 078
    Par défaut CrystalDiskInfo
    Bonjour,
    Merci pour la réponse.
    j'ai mis un Point d’arrêt sur "IsFileExistEx(m_GraphDlgPath,...."

    La variable path est :m_GraphDlgPath = L"C:\\Users\\Gabriel\\Downloads\\CrystalDiskInfo\\..\\Freesia\\CdiResource\\dialog\\Graph.html"

    Dans le répertoire "freesia" de mon PC il n’y a ni cdi CdiResource ni graph.html.
    Sur le site de l'editeur il y a plusieurs utilisateurs qui ont le même problème. La réponse de l'editeur est pour le moins vaseuse : il conseille de mettre un exécutable dans le répertoire ...
    Selon un utilisateur l' exe contient "Open candy) je cite "• 09/13/14--20:34: Remove openCandy you fucking prick! - CrystalDiskInfo Ticket #34236 on OSDN"
    Donc j'en reste là .. et je marque le problème résolu.

    La publication des sources donne en général confiance, dans ce cas ça semble destiné à piéger l'utilisateur ...

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 011
    Points : 2 078
    Points
    2 078
    Par défaut
    Bonjour,

    5 ans apres j'ai trouvé !!!

    Pour construire crystaldiskinfo avec Visual Ttudio :
    Aller sur le site du devceloppeurhttps://crystalmark.info/en/download/#CrystalDiskInfo

    Telecharger :
    - le .zip des sources
    - le .Zip des executables
    Dezipper

    Charger la solution dans VS
    Modifier les proprietés du projet (le repertoir de sortie est dans ..\marginality\ pourquoi pas, mais je prefere .\executable\ (donc dans le repertoire des sources et pas dans le parent)
    Recopier maintenant dans ce repertoire le repertoire cdiresource qui se trouve dans lze.zip des executables

    Il ne reste plus qu'à construire et executer. C'est toujours plus rassurant que les nombreuses versions que l'on trouve sur de nombreux sites, mais dont l'exe et au moins 4 fois plus volumineux ....Bonjour les malware .

  7. #7
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Bonjour,

    Félicitations. En cinq ans, peut être que le(s) développeur(s) ont amélioré le processus de compilation et le code .

    C'est toujours plus rassurant que les nombreuses versions que l'on trouve sur de nombreux sites, mais dont l'exe et au moins 4 fois plus volumineux ....Bonjour les malware .
    Oui, mais en même temps, il y a une version disponible sur le site officiel.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  8. #8
    Membre chevronné

    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 011
    Points : 2 078
    Points
    2 078
    Par défaut
    Bonsoir
    Félicitations. En cinq ans, peut être que le(s) développeur(s) ont amélioré le processus de compilation et le code
    Et bien non ! le repertoire qui va bien n'est toujours pas dans le zip des sources il est dans le zip des executables (16, 32 bits, X86, X64 + les versions ARM) Au lancement l'erreur était toujours présente. Le developpeur aurait pu le dupliquer.
    Bien sur pour toi la solution aurait été immédiate.

    Je me sui repenché sur le problème puisque je vais remplacer le HDD de mon PC par un SSD et je me suis demandé combien il avait d'heures de fonctionnement continu. Crystal disk info dit trois ans et demi c'esr cohérent.


    J'ai téléchargé pas mal de crystalDiskinfos.exe sur des sites que je pensais fiables, les différences de tailles sont effarentes (meme version, meme plateforme..) et Kasersky ne dit rien.

    Sur Gogle j'ai vu que d'autres avaient eu le meme problème, c'est pour ça que j'ai publié. Parce que je trouve que c'est un utilitaire bien fait.

    Bien sur j'ai rapidement vu que graph.html se trouvait dans le zip des exe, mais ou le mettre ou quel path à ajouter ..

    PS j'ai du coup un peu regardé le code et le secret était là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #define DIALOG_DIR					_T("CdiResource\\dialog\\")
    m_GraphDlgPath.Format(_T("%s\\") DIALOG_DIR GRAPH_DIALOG_IE8, tmp);
    Bonne soirée

  9. #9
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Par simple curiosité, pourquoi ne pas faire confiance à la version proposée sur le site officiel (à côté du lien pour les sources) ?

    Bien sur pour toi la solution aurait été immédiate.
    Tout est relatif. Il y a des problèmes qui peuvent sembler évident et d'autres que sur lesquels on peut bloquer longtemps. En tout cas, je vous félicite pour avoir avancer (et en plus, par vous même) sur ce sujet.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. [WebForms][CR] Compilation en ligne de commande et etat Crystal
    Par David.V dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 02/02/2009, 00h58
  2. Réponses: 12
    Dernier message: 09/05/2008, 07h05
  3. [Info] Compilation/execution des programmes C/C++
    Par JavaAcro dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/03/2006, 07h39
  4. [Info]Comment compiler un fichier sans le lancer ?
    Par blan dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 10/10/2005, 18h03
  5. [Info]Des niveaux de compilation existent ?
    Par sbelli dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 07/04/2005, 19h01

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