Accueil > Forum > > > > Pb avec XP SP2
Pb avec XP SP2
vendredi 19 août 2005 à 17:40:49 |
Pb avec XP SP2

obby
|
Salut,
Jai développé un soft qui affiche dans des combobox un nom
lorsquil trouve deux fichiers avec un nom quasi-identique, la différence étant
que la fin de fichier se termine par $f et $d. Lorsquil voit que les deux
fichiers sont présents, il ajoute à la combobox.
Cela marche très bien sur un
XP SP1 (mon PC ou jai développé le soft) mais une fois le soft installé sur
une autre machine ayant un XP SP2, cela ne fonctionne plus aussi bien, il naffiche
pas toute les références existant dans certains répertoires.
Quelqu'un saurait-il d'ou cela vient?
Merci
|
|
vendredi 19 août 2005 à 17:46:04 |
Re : Pb avec XP SP2

vinc1008881
|
il faut recompiler ton programme a mon avis, le code source est
potable mais pas le binaire, peut etre que certaine fonction Windows
ont ete deplacée ??
Il serais judicieux de poster ton code, du moins les parties qui semblerai ne pas marché,
voila, @+, vinc1008881
|
|
vendredi 19 août 2005 à 17:50:28 |
Re : Pb avec XP SP2

obby
|
voila le code :
//Vide le combobox pour mise à jour
if(m_ComboModele.GetCount () != 0)
{
for(int i=0;i<m_ComboModele.GetCount ();++i)
m_ComboModele.ResetContent ();
}
//On récupère le repertoire choisi dans la première combobox
int nIndex = m_ComboMarque.GetCurSel ();
m_ComboMarque.GetLBText (nIndex,m_SMarque);
CString path;
path = m_StrPath+"telephone_lk\\"+m_SMarque;
CString szExtension
= "*f.gif"; //
image de face
CString szExtension2 = "*d.gif"; // image de dos
//On concatène le caractère '\'
path += "\\";
//Puis l'extension
CString strpath = path + szExtension;
CString strpath2 = path + szExtension2;
// Va contenir les informations de la recherche
WIN32_FIND_DATA File, File2;
HANDLE liste, liste2;
//On cherche les deux premiers Fichiers
liste = FindFirstFile(strpath, &File);
liste2 = FindFirstFile(strpath2, &File2);
//On recupere les noms de fichiers
CString str;
CString str2;
str.Format((CString)File.cFileName);
str2.Format((CString)File2.cFileName );
//On enlève l'extension
CString tmp1 = str.SpanExcluding (".");
CString tmp2 = str2.SpanExcluding (".");
//On cherche la position a partir de laquelle les deux fichiers ont un nom différent
int index = tmp1.ReverseFind ('$'); //*****$f.gif
int index2 = tmp2.ReverseFind ('$'); //*****$f.gif
//on recupère les noms qui doivent être les meme
CString stra1 = str.Left (index);
CString stra2 = str.Left (index2);
//vérification que les deux fichiers correspondent au meme nom
if(stra1 == stra2)
{
//On ajoute le fichier, à la liste
m_ComboModele.AddString (stra1);
}
//Tant qu'il existe un fichier suivant
while((FindNextFile(liste, &File))&&(FindNextFile(liste2, &File2)))
{
//Si ce fichier est un répertoire
if(File.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
}
else //Sinon
{
str.Format((CString)File.cFileName);
str2.Format((CString)File2.cFileName );
//mise en forme de la chaine de charactère
tmp1 = str.SpanExcluding (".");
tmp2 = str2.SpanExcluding (".");
index = tmp1.ReverseFind ('$');
index2 = tmp2.ReverseFind ('$');
stra1 = str.Left (index);//str.SpanExcluding ("f");
stra2 = str.Left (index2);//str2.SpanExcluding ("d");
if( stra1 == stra2)
{
//On ajoute le fichier, à la liste
if (stra1 != ' ')
{
m_ComboModele.AddString (stra1);
}
}
}
}
//On arette la recherche.
FindClose(liste);
//par défaut, on affiche le premier fichier dans la combobox
m_ComboModele.SetCurSel(0);
|
|
vendredi 19 août 2005 à 18:00:55 |
Re : Pb avec XP SP2

BruNews
|
Les APIs de gestion fichiers, comme la plupart des autre, n'ont pas bougé d'un iota sinon plus rien ne fonctionnerait.
C'est quoi tout ce mic mac de recopie des cFileName dans des CString (avec les alloc mémoire que ça implique), les reverse, etc... Apprends à manier les pointeurs. Doit être aussi 'rapide' que du VB ton truc.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 18:05:49 |
Re : Pb avec XP SP2

obby
|
Ba dsl mais les CString c plus facile à manipuler, bon nombre de
fonctions sont déjà programmé, j'ai pas envie de tout me retaper. Mais
bon, le pb il est pas la, du moins je crois pas.
|
|
vendredi 19 août 2005 à 18:32:22 |
Re : Pb avec XP SP2

BruNews
|
et le vb c'est encore plus facile mais la paie n'est pas la même, allons ce n'est pas une façon de penser dans la prog.
char *c, *d; DWORD len;
c = f1.cFileName; while(*c) { // RECHERCHE DU $ if(*c == '$') goto found1; c++; } // ici pas trouvé on passe aux fichiers suivants
found1: len = c - f1.cFileName; idem avec d sur f2.cFileName
if(len != (d - f2.cFileName)) PAS BON
Ensuite un memcmp sur len suffit.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 18:50:30 |
Re : Pb avec XP SP2
|
vendredi 19 août 2005 à 19:11:25 |
Re : Pb avec XP SP2

BruNews
|
en fait c suffira, pas besoin de d: c = f2.cFileName; while(*c) { // RECHERCHE DU $ if(*c == '$') goto found2; c++; } ici pas de '$', passer aux fichiers suivant
found2: if(len != (c - f2.cFileName)) PAS BON, fichiers suivants
if(!memicmp(f1.cFileName, f2.cFileName, len)) FICHIERS T'INTERESSENT
et y a pas une alloc ni desalloc ni retournement ni rien d'inutile et donc nuisible.
ciao... BruNews, MVP VC++
|
|
vendredi 19 août 2005 à 19:22:54 |
Re : Pb avec XP SP2

obby
|
Dans le déroulement de la fonction, les found1 et found2: je peu les
mettre ou je veu ou c séquentiel? J'ai du mal à voir comment organiser
tout ca.
|
|
vendredi 19 août 2005 à 19:25:55 |
Re : Pb avec XP SP2

obby
|
en fait c'est qu'il faut placer dans des boucles :
//Tant qu'il existe un fichier suivant
while((FindNextFile(liste, &File))&&(FindNextFile(liste2, &File2)))
{
........
}
|
|
Cette discussion est classée dans : pb, xp, soft, sp2, développé
Répondre à ce message
Sujets en rapport avec ce message
pb de socket sous windows XP [ par fr1man ]
j'ai réalisé un "chat" avec les sockets en VC++6. il fonctionne très bien sous NT et 2000 mais pas sous XP. d'où vient le problème ?j'utilise l'API wi
Pb windows XP [ par c2millet ]
Voilà g réalisé une aplli qui envoie des mails. Elle fonctionne sous Win98 et Win2000. Mais sous XP tout se complique.1erv pb: J'ai une Edit box Multi
stack bluetooth windows XP SP2 MSDN [ par chandy ]
Bonjour,Quelqu'un aurait-il des exemples sous visual C++ .net utilisant la stack BT de windows XP SP2 ? dont la description se trouve :http://msdn.mic
Pb Kernel32 [ par UnderFlow ]
Pb passage win Xp -> 98. Bonjour, Alors voilà, j'ai développé un petit programme en C que j'ai compilé sous dev-C++ (ds mon environnement XP). Il s'e
Link CBuilder6 [ par Ravaner ]
Bjr à tous,Je migre mes programmes de Win-98 vers XP. Ce qui tournait sans pb, ne veut plus se linker avec CBuilder-6 sous XP. Le message d'erreur men
SendMessage/FindWindow - problème [ par badrbadr ]
Salut;Vous savez s'il arrive des fois que SendMessage et FindWindow ne fonctionnent pas sur un Windows XP SP2 en réseau (client Novell). J'ai fais un
activation raw socket pour win XP SP2 [ par sendouda ]
bonjour tout le monde; est ce qu'il y a un moyen pour activer les raw sockets pour TCP dans le cas de WIN XP SP2?
Pb de portabilité XP ? [ par ricky78 ]
J'ai un programme codé en visual c++ 6.0 compilé sous windows 98.Celui-ci utilise un fichier ini créé avec la fonction GetPrivateProfileString()De plu
Pb variable snmp c++ [ par atum251 ]
Pb variable snmp c++ -------------------------------------------------------------------------------- Bonjour, j'éssai d'intérroger un switch avec
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Forum
RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|