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

VB.NET Discussion :

Renommer l'ordinateur à l'aide d'une textBox


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut Renommer l'ordinateur à l'aide d'une textBox
    Bonjour,

    je souhaite renommer un ordinateur suivant le nom passé en argument dans une textBox et validé par un bouton.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Bt1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bt1.Click
     
    End Sub
    Donc j'ai mon bouton et je voudrais insérer une fonction à l'intérieur pour changer le nom du pc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Declare Function SetComputerName Lib "kernel32" Alias "SetComputerNameA" (ByVal lpComputerName As String) As Long
    Public Function ChangeComputerName(NewName As String) As Boolean
     
    On Error Resume Next
    Dim lret As Long
     
    lret = SetComputerName(NewName)
    If Err.Number = 0 Then ChangeComputerName = lret <> 0
     
    End Function

  2. #2
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Attends soit je comprends rien au probleme, soit ta question est vraiment niveau (très) débutant !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim NomPc as String = ChangeComputerName(Textbox1.Text)
    C'est ca que voulais savoir ?

    EDIT : Es tu sur d'etre dans le bon forum ? car la c'est le forum Script...
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    En fait le problème est que changeComputerName n'est pas déclaré et si je le déclare en tant que fonction à l'intérieur de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Bt1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bt1.Click
     
    End Sub
    alors là il me génère des erreurs

  4. #4
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Normal tu ne mets pas une fonction dans une procédure !

    Soit tu mets ta fonctions en dehors et tu l'appelles avec mon code ou alors tu supprimes ta fonction et tu mets le code de ta fonction dans ta procédure.
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Merci pour tes conseils
    mais malheureusement alors que le code ne génère aucune erreur, le changement de nom ne s'effectue pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        Private Declare Function SetComputerName Lib "kernel32" Alias "SetComputerNameA" (ByVal lpComputerName As String) As Long
        Public Function ChangeComputerName(ByVal NewName As String) As Boolean
     
            On Error Resume Next
            Dim lret As Long
     
            lret = SetComputerName(NewName)
            If Err.Number = 0 Then ChangeComputerName = lret <> 0
     
        End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Declare Function SetComputerName Lib "kernel32" Alias "SetComputerNameA" (ByVal lpComputerName As String) As Long  
     
    Public Function ChangerNomOrdi(NouveauNomOrdi As String) As Boolean
        On Error Resume Next
        Dim Changer As Long
        Changer = SetComputerName(NouveauNomOrdi)
        If Err.Number = 0 Then 
            ChangerNomOrdi = True
        Else
            ChangerNomOrdi = False
        End If
    End Function
    j'ai essayé avec les deux fonction ci-dessus, puis ensuite

    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
        Private Sub Bt1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Bt1.Click
            If RadioBtn1.Checked Then
                Label1.Text = nomOrdi & "-P"
            Else
                Label1.Text = nomOrdi & "-C"
            End If
     
    Dim NomOrdiComplet As String = ChangeComputerName(Label1.Text)
    If Retour = True Then
        MsgBox("Le nom de votre ordinateur a été changé")
    Else
        MsgBox("Le nom de votre ordinateur n'a pas été changé")
    End If
     
        End Sub
    Et là lorsque je clic sur mon bouton, il me met que le nom de l'ordi a changer alors qu'il n'en est rien. Je trouve ça bizarre aussi qu'il ne me propose pas de rebooter, que d'un simple clic le pc soit renommé.
    Je ne sais pas si je suis clair? (c'est un gros pb pour moi d'etre clair )

  6. #6
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Y'a des erreurs de conversions dans ton code deja !

    Mets cela en haut de ta feuille :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Option Strict On
    Option Explicit On
    Ensuite d'ou sort cette variable "Retour" non déclarée ?
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Pour la variable elle était déclarée comme ca :

    sinon quesque c'est que tes options? car elles me génèrent des erreurs sur la partie en rouge du code suivant. Alors qu'il n'y a pas de problème lorsque je ne les mets pas. Je les ai bien misent tout en haut portant


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If RadioBtn1.Checked Then
                Select Case CbBox1.SelectedItem
                    Case "Portables"
                        'code effectué si expression=valeur
                    Case "Postes Administrateurs"
    
                    Case "Postes Fixes"
    
                End Select

  8. #8
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Question bête : Pourquoi changer le nom de la machine depuis le code ?

    Nombreux problèmes vont se poser :
    • L'utilisateur qui éxécute le code est admin de la machine ?
    • Comment tu gères le fait que la machine doit être redémarré pour que les changements prennent réellement effet ?
    • La machine est enregistrée sur un domaine ?
    • D'autres machines accède peut être cette machine en utilisant son nom.
    Je crois que tu vas au devant de gros problèmes en faisant ça ...

    L'utilisateur éxécutant ce code doit être admin, si c'est le cas il peut le faire très simplement dans Windows.
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

  9. #9
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    je sais très bien mais voilà je suis en train de faire une petite appli pour l'admin du domaine, pour automatiser certaines taches.
    Donc oui il est admin.
    Je dois dans le meme temps créer ce compte ordinateur dans une AD et le placer dans la bonne OU

  10. #10
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Citation Envoyé par poussin_44
    Pour la variable elle était déclarée comme ca :

    sinon quesque c'est que tes options? car elles me génèrent des erreurs sur la partie en rouge du code suivant. Alors qu'il n'y a pas de problème lorsque je ne les mets pas. Je les ai bien misent tout en haut portant
    Et oui c'est tout l'interet des options !! ca va t'apprendre à bien coder en VB.NET et ce sont des erreurs de conversions...

    Remplace par cela et comme par magie tu seras heureux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If RadioBtn1.Checked Then
                Select Case CbBox1.SelectedItem.Tostring
                    Case "Portables"
                        'code effectué si expression=valeur
                    Case "Postes Administrateurs"
    
                    Case "Postes Fixes"
    
                End Select
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  11. #11
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Alors merci pour vos réponses, petit à petit j'y vois un peu plus clair sur la programmation dans visual basic 2005.

    Par contre en ce qui concerne le rennomage du pc cela ne fonctionne toujours pas. Alors que j'ai bien un message de réussite !
    j'ai modifié quelque peu mon code comm ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'Pour Changer le nom de votre ordinateur :
            Dim NomOrdiComplet As Boolean = CBool(CStr(ChangerNomOrdi(Label1.Text)))
     
            If NomOrdiComplet = True Then
                MsgBox("Le nom de votre ordinateur a été changé")
            Else
                MsgBox("Le nom de votre ordinateur n'a pas été changé")
            End If
    j'ai également essayé dans ma fonction avec SetComputerNameEX au lieu de SetComputerNameEX mais c'est toujours pareil.

    Quelqu'un a-t-il déjà réussi?

  12. #12
    Membre Expert
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Par défaut
    Pas regardé mais ca doit etre un probleme dans l'API...
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  13. #13
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Tu ne reçoit aucune erreur ????
    Ton assembly ne doit pas être signée et avec un "full trust" pour faire cette opération ?
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

  14. #14
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Excuse moi mais je n'ai pas compris ce que tu as dis ...

    en tout cas il ne me génère aucune erreur, au contraire, il m'indique : Le nom de votre ordinateur a été changé

  15. #15
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Au cas ou, tu as tenté de rebooter ??
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

  16. #16
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    oui j'ai essayé ca dès le début mais ca ne change rien. Ca doit venir de la fonction SetComputerName mais je n'en trouve pas d'autre.
    Est-ce que ce serait possible en tappant dans la base de registre?

  17. #17
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Je pense malheuresement qu'il y a plus qu'une clé qui contient le nom de la machine mais je n'en suis pas certain.
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

  18. #18
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    merci je vais me pencher la dessus

  19. #19
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Désolé je ne peux pas t'aider plus
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

Discussions similaires

  1. [AC-2007] Renommer un champ de requête à l'aide d'une variable issue d'un formulaire
    Par sdechabot dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 27/06/2012, 23h24
  2. Réponses: 4
    Dernier message: 21/05/2009, 01h59
  3. [Débutant] Renommer à l'aide d'une boucle data1,data2 data3 en test1 test2 test3
    Par matmuay dans le forum MATLAB
    Réponses: 6
    Dernier message: 19/04/2009, 21h58
  4. Besoin d'aide pour bloquer un nombre sur une TextBox
    Par Torrent74 dans le forum Flash
    Réponses: 2
    Dernier message: 24/10/2007, 20h14
  5. Réponses: 1
    Dernier message: 10/04/2007, 23h29

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