Prblème executable

Résolu
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007 - 28 juin 2006 à 13:33
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007 - 1 juil. 2006 à 08:56
Bonjour à tous,

J'ais actuellement un programme qui fonctionne sous windows 2000, en effet je l'ai compiler avec vb6 sur ce même pc, mais le pb survient lorsque j'execute ce même programme sur un PC windows XP.

Y à-t-il une différence de compilation de visual basic sur 2000 et sur XP ?

ps: parce que mon problème ne peut venir que de la (enfin je pense........).

8 réponses

thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 16:49
bon j'ais résolu mon pb d'erreur sous 2000 cela venais d'un doublon dans mon fichier !! mais pour xp ca ne marche tj pas !!!

dèg
3
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
28 juin 2006 à 14:00
Salut,

Il y aura surtout un problème si tu t'es contenté de recopier le .exe sur l'autre machine.
As-tu déployé un package d'install (un setup.exe) pour installer ton programme sur l'autre PC ?
Si non, ben ... il faut.
0
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 14:21
ben le truck c'est que l'application est déjà existante avec un setup, elle à été développé sur la PC 2000 puis installer sur le PC XP via le setup d'accord....
Et moi je n'ai fait qu'une petite modif de l'exe, de plus pour d'autre prog que celui la la recopie de l'exe fonctionne alors je me demande koi !!

et ce n'est pas moi qui est développé l'application ni le setup donc dur dur pour reconstruire un setup sans le fichier qui a permis de créer l'ancien.
0
crogiez Messages postés 86 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 27 décembre 2011
28 juin 2006 à 14:46
hello
ya une différence denoyau entre W2000 et XP=W2003
ç'est quoi l'erreur exactment ?
A+

si résolu, marquez le
http://crogiez.free.fr
http://elvis.crocket.free.fr

 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 15:38
En fait c'est pas vraiment une erreur mais lorsque le prog tourne sur 2000 ca fonctionne + ou - bien (oui il y à une erreur pendant la lecture d'un fichier à environ 60 %, je ne sais pas trops c'est un message d'erreur, voir code source fonction ci-dessous) et sous XP j'ais pas d'erreur mais le prog fonctionne pas !!!

Public Sub Lecture_WW(Fichier As String)
    Dim liste_champs As New Collection
    Dim tab_champs() As String
   
    Dim car, ligne As String
    Dim champ As Variant
    Dim nb_ligne As Integer
    Dim nb_separateur As Integer
    Dim taille_fichier, car_lu As Double
    Dim separateur As String
    Set Liste_MAJ_WW = New Collection
    separateur = conf.separateurWW
   
    'Exit Sub   '    modifier le 27 juin 2006 par Calderon Nicolas stagiaire BTS IRIS
    On Error GoTo fermeture    taille_fichier FileLen(Fichier): car_lu 0
    Open Fichier For Input As #2
   
    FrmXl.status = "extraction de World Writer"
    FrmXl.status.Refresh
   
    While Not (EOF(2))        car "": ligne ""
        nb_separateur = 0
        car = Input(1, #2)
        While car <> Chr(10) And Not (EOF(2))
            car_lu = car_lu + 1
            ligne = ligne + car
            car = Input(1, #2)            If car separateur Then nb_separateur nb_separateur + 1
        Wend
       
        FrmXl.ProgressBar1.Value = car_lu / taille_fichier * 100
        FrmXl.Frame1.Caption = Int(FrmXl.ProgressBar1.Value) & "%"
        If nb_ligne Mod 40 = 0 Then FrmXl.Frame1.Refresh
       
        If nb_separateur > 2 Then
            tab_champs = VBA.Split(ligne, separateur)
           
            Set liste_champs = New Collection
            For Each champ In tab_champs
                liste_champs.Add Trim(champ)
            Next
            Liste_MAJ_WW.Add liste_champs, liste_champs.item(3) & liste_champs.item(1)


        End If
    Wend
    Close #2


    Exit Sub
fermeture:
    Close #2
    MsgBox "Erreur de lecture du fichier :" & vbCrLf & err.Description, vbInformation, "Erreur"
    Exit Sub
End Sub
0
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 16:08
heu oui si je te dis pas ce que dis l'erreur ca va pas le faire lol :

err.Description = "Cette clé est déjà associée à un élément de cette collection"
0
crogiez Messages postés 86 Date d'inscription lundi 8 décembre 2003 Statut Membre Dernière intervention 27 décembre 2011
30 juin 2006 à 10:11
bizarre
tu utilises des fonctions obsoletes
faut utiliser les objets FileSystemObjet
je ferais plutôt comme çà


Public Sub Lecture_WW(Fichier As String)


    Dim liste_champs As New Collection
    Dim tab_champs() As String
   
    Dim car, ligne As String
    Dim champ As Variant
    Dim nb_ligne As Integer
    Dim nb_separateur As Integer
    Dim taille_fichier, car_lu As Double
    Dim separateur As String


 'declaration de l'objet FileSystemObject
 'je te laisse trouver la syntaxe exacte
 'set FSO = ...


    Set Liste_MAJ_WW = New Collection
    separateur = conf.separateurWW
   
    'Exit Sub   '    modifier le 27 juin 2006 par Calderon Nicolas stagiaire BTS IRIS


    On Error GoTo fermeture


    taille_fichier FileLen(Fichier): car_lu 0


   'Open Fichier For Input As #2
   'remplacez la ligne précédente par


   'création objet correpondant à ton fichier
   'set ofichier = FSO.file(fichier)


   'ouverture du fichier
   'ofichier.open
   
    FrmXl.status = "extraction de World Writer"
    FrmXl.status.Refresh


 'on dirait que tu cherches les lignes chr(10)+chr(13)
 'pour çà utilisez :
 'finligne=""
 'while not(ofichier.endofstream)
 'ofchier.lineinput
 'ligne=ligne+finligne


 'puis recherchez si separateur est dedans par position InStr()
 'while Instr(ligne, separateur<>0)
         'tu obtiens lignesanssep et finligne


         'tu traites lignesanssep par un sous prog
         'dans un 1er temps tu ne fais que afficher les lignessanssep
         'par msgbox, pour vérifier
         'dans un 2eme temps tu créé sous prog qui traite lignesanssep


         'debligne
      'tu cherches si ligne suivante
      'si not EOF debligne=finligne+ligne suivante
   'fin de lecture


    While Not (EOF(2))        car "": ligne ""
        nb_separateur = 0
        car = Input(1, #2)
        While car <> Chr(10) And Not (EOF(2))
            car_lu = car_lu + 1
            ligne = ligne + car
            car = Input(1, #2)            If car separateur Then nb_separateur nb_separateur + 1
        Wend
       
        FrmXl.ProgressBar1.Value = car_lu / taille_fichier * 100
        FrmXl.Frame1.Caption = Int(FrmXl.ProgressBar1.Value) & "%"
        If nb_ligne Mod 40 = 0 Then FrmXl.Frame1.Refresh
       
        If nb_separateur > 2 Then
            tab_champs = VBA.Split(ligne, separateur)
           
            Set liste_champs = New Collection
            For Each champ In tab_champs
                liste_champs.Add Trim(champ)
            Next
            Liste_MAJ_WW.Add liste_champs, liste_champs.item(3) & liste_champs.item(1)
        End If
    Wend
    Close #2


    Exit Sub
fermeture:
    Close #2
    MsgBox "Erreur de lecture du fichier :" & vbCrLf & err.Description, vbInformation, "Erreur"
    Exit Sub
End Sub






 



si résolu, marquez le



http://crogiez.free.fr



http://elvis.crocket.free.fr


 
0
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
1 juil. 2006 à 08:56
et bien comme je l'ai dis ce n'est pas moi qui à fait le prog mais j'ai juste reprit le source pour voir pk le logiciel ne fonctinnai plus !! voila !!
Merci quand même.
0
Rejoignez-nous