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 :

Conversion d'un VB6 en C#


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 931
    Par défaut Conversion d'un VB6 en C#
    bonjour, j'ai vraiment du mal à convertir une méthode qui avait été écrite en Vb6 pour la mettre en C#.net

    Après plusieurs recherche et avoir utilisé un site de conversion qui me donnait plein d'erreur, je solicite votre aide.

    Voici le code en VB6:
    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
    21
    22
    23
    24
     
    Public Function Supervision1(ByVal bit As Integer, ByVal indice As Integer) As Integer
            Dim nbc As Integer
            Dim line As String
            Dim Str As String
            Dim nbByte As Integer
            Dim i As Integer
            Dim Start As Integer
            Dim nval As Long
            Dim Oct As Integer
            Dim Rank As Integer
            On Error Resume Next
            Rank = indice
            nbc = Len(bit) Mod 2
            'Mise au format &Hxx -> on complète par 0 si besoin
            Str = IIf(nbc = 1, "0" & bit, bit)
            While Rank <= 31 And Len(Str) >= 8
                Str = Mid(Str, Len(Str) - 4)
                Rank = Rank - 16
            End While
            nval = Val("&H" & Str)
            i = Val(Str And CStr(Hex(2 ^ Rank)))
            Supervision1= IIf((nval And 2 ^ Rank) > 0, 1, 0)
        End Function
    J'arrive pas à trouver l'équivalent de:
    Len
    et la mise au format Hex.


    Merci de votre aide

  2. #2
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut
    Une petite astuce que j'ai trouvé tout dernièrement :
    1 ouvrir un nouveau projet VB (aaaatchoum ! Santé !)
    2 copier ta fonction dans ce projet (différentes corrections vont déjà être effectuées)
    3 éventuellement compiler et corriger
    4 reprendre le code et le passer à la moulinette...
    5 finir de corriger le code dans c#

    Comme moulinette j'utilise Econ NetVert.

    Évidemment un fonction comme len ne passera pas mais il y a des équivalents :
    - pour un string : maString.Length
    - pour un tableau idem
    - etc...

  3. #3
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Il existe des convertisseurs en ligne VB.Net <=> C#. VB et VB.Net ne sont pas le même langage, mais leur syntaxe étant proche et ton bout de code étant relativement simple, ça vaut la peine d'essayer.

  4. #4
    Membre éprouvé Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 931
    Par défaut
    Merci pour vos réponses:

    J'ai utilisé le site http://www.developerfusion.com/tools.../vb-to-csharp/

    Il me trouve pas mal d'erreurs, des fonctions qu'il ne sais pas traduire et ce qu'il a converti ne correspond plus. Par exemple
    Len(bit) bit etant un integer

    il me le converti par Strings.Len(bit)

    Auriez vous d'autre site de conversion, mais je vais cherché aussi de mon coté.

  5. #5
    Membre éprouvé Avatar de megamario
    Homme Profil pro
    VB6/VB.net/C/C++/C#
    Inscrit en
    Septembre 2008
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : VB6/VB.net/C/C++/C#
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2008
    Messages : 931
    Par défaut
    J'avoue que j'ai du mal à voir ce que voulait celui qui a crée la méthode en Vb6

    Pour:

    Len(bit)

    Dans l'aide de Visual il indique que la méthode Len :Retourne un entier contenant le nombre de caractères contenus dans une chaîne ou le nombre nominal d'octets requis pour stocker une variable.

    il parle d'une chaine effectivement ou le nombre nominal d'octets.

    Vu que "bit" est un integer on a pas le nombre d'une chaine..!!

  6. #6
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    A ta place, j'irais poser la question sur le forum VB, où tu trouveras plein de gens plus compétent qu'ici dans ce domaine

Discussions similaires

  1. Conversion MsFlexGrid de VB6 vers VB.net
    Par megamario dans le forum VB.NET
    Réponses: 4
    Dernier message: 19/11/2013, 07h15
  2. Conversion taille fenêtre VB6>VB2010
    Par gaiac dans le forum Visual Studio
    Réponses: 1
    Dernier message: 29/05/2013, 20h58
  3. Conversion de Code Vb6 en VB.Net
    Par mr.net dans le forum VB.NET
    Réponses: 11
    Dernier message: 08/10/2010, 22h06
  4. conversion de code VB6 en PHP
    Par Illuminati dans le forum Langage
    Réponses: 2
    Dernier message: 06/05/2010, 20h28

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