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

Visual Studio Discussion :

Migration VB en C#


Sujet :

Visual Studio

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2016
    Messages : 4
    Par défaut Migration VB en C#
    Bonjour à tous,

    Je dois migrer du code VB en C#, étant complètement novice sur ces deux langages, comment puis-je m'y prendre ?
    j'ai vu qu'il y avait des logiciels qui permettent de migrer d'un langage à un autre mais apprement il y aurait pas mal de perte de données !

    Au cas ou il y aurait des confirmés sur ces deux langages, voici le code :

    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
    While (True)
            'lancer le process et attendre qu'il finisse de s'exécuter
            lPid = Shell(exeApp, icodeVisible)
            If lPid <> 0 Then
                'Get a handle to the shelled process.
                lHnd = OpenProcess(SYNCHRONIZE, 0, lPid)
     
                'If successful, wait for the application to end and close the handle.
                If lHnd <> 0 Then
                   ModuleUtil.WriteINIString fichIniName, "VBTURN", "LAST", Date & " " & Time
                   lRet = ModuleProcess.WaitForSingleObject(lHnd, INFINITE)
                   ModuleProcess.CloseHandle (lHnd)
                End If
            DoEvents
            Sleep pause
            End If
     
        Wend
     
       Exit Sub

  2. #2
    Membre expérimenté
    Homme Profil pro
    Analyste Programmeur
    Inscrit en
    Septembre 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 176
    Par défaut
    Bonjour,

    D'une manière générale, il faut déjà comprendre le code de départ et vérifier le code d'arrivée car il y des différences entre les 2 langages qu'un converter ne pourra pas interpréter, mais bon ça fait le gros du boulot.

    Je ne suis pas un spécialiste de VB, mais ton code ressemble plus à du VBA qu'a du VB.Net. C'est peut-être pour ça que le converter que j'ai testé, n'y arrive pas.
    Me trompe-je ? Un spécialiste pourra peut-être répondre.

    Bonne continuation.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2016
    Messages : 4
    Par défaut
    Bonjour,

    Merci pour ta réponse, oui effectivement c'est ce que j'essaye de faire, analyser le code et essayer de convertir au fur et à mesure le code en C#, mais en l’occurrence ce n'est pas évident !

    Je ne connais pas la différence entre du VB.Net et du VBA, je ne pourrais te dire aussi. En revanche, moi aussi je voulais essayer un programme pour convertir ce code en C# mais je pense tester à tout hasard. En tout cas je ne pense pas que ce soit le faite que ce soit du VBA ou vb.Net qui créer la perte de données, mais comme tu dis un spécialiste pour mieux me répondre.

    Bonne continuation à toi aussi.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    il y a des convertisseurs vb.net c# qui fonctionne le plus souvent à 100%, car vb.net et c# sont 2 langages qui sont faits pour être identiques hormis la syntaxe, et ils s'appuient sur le framework .net

    par contre avant vb.net il y avait vb6 et vba
    vba est un langage de développement pour les applications offices (donc pas de .exe, juste des macros dans les fichier office)
    vb6 permettait de faire des programme (.exe) avant les années 2000

    que ca soit pour vba ou vb6 tu ne trouveras pas de convertisseurs car ce sont des langages totalement différents (vb6 n'est pas orienté objet par exemple)
    à une époque visual studio pouvait ouvrir un projet vb6 et le transformer en vb.net en le modifiant légèrement, de là on pourrait se dire qu'on peut le passer en c#
    mais c'est une mauvaise idée, le mieux est de comprendre le programme d'origine, et de le repenser/réécrire totalement en c# (faire la chose même linéairement serait idiot, sauf si c'est un truc de 100 lignes de code)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2016
    Messages : 4
    Par défaut
    Merci POL63, il y a effectivement des convertisseurs qui permettent de passer de VB à C# mais avec certaines pertes de données ( fonction crée etc.....).

    Le code VB plus haut est bien du VB6. Du coup je vais convertir petit à petit le code en C#, je pense aussi que c'est la seul solution.

    Si quelqu'un est expert en C# et arrive à traduire ce code VB6, je suis preneur,
    en revanche, je voudrais juste qu'on m’explique la procédure de conversion et le code final.

Discussions similaires

  1. [MySQL -> PostGreSQL] Migration
    Par Nepomiachty Olivier dans le forum Administration
    Réponses: 9
    Dernier message: 23/04/2010, 16h33
  2. Pb migration Access / SQL server
    Par yoyo dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 25/04/2005, 10h39
  3. migration de ms access xp vers primebase
    Par d@rkness dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 17/11/2002, 00h08
  4. [Migratation] Application portable, indépendant du SGDB
    Par benouille dans le forum Décisions SGBD
    Réponses: 6
    Dernier message: 28/08/2002, 13h51
  5. [Kylix] Migration delphi -> kylix
    Par Christian dans le forum EDI
    Réponses: 1
    Dernier message: 03/04/2002, 22h50

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