Vous êtes sur la page 1sur 5

Imports System.DirectoryServices.

AccountManagement

Imports System.Windows.Forms

Public Class MainForm

Private adminUsername As String = "NomAdmin"

Private adminPassword As String = "MotDePasseAdmin"

Private domainName As String = "NomDomaine"

Private Sub btnAddUser_Click(sender As Object, e As EventArgs) Handles btnAddUser.Click

Try

Using context As New PrincipalContext(ContextType.Domain, domainName, adminUsername,


adminPassword)

Dim newUser As UserPrincipal = New UserPrincipal(context)

newUser.SamAccountName = txtUsername.Text

newUser.SetPassword(txtPassword.Text)

newUser.DisplayName = txtDisplayName.Text

newUser.Description = txtDescription.Text

newUser.Save()

MessageBox.Show("Utilisateur ajouté avec succès.")

End Using

Catch ex As Exception

MessageBox.Show("Une erreur s'est produite : " & ex.Message)

End Try

End Sub

Private Sub btnModifyUser_Click(sender As Object, e As EventArgs) Handles btnModifyUser.Click

Try

Using context As New PrincipalContext(ContextType.Domain, domainName, adminUsername,


adminPassword)

Dim user As UserPrincipal = UserPrincipal.FindByIdentity(context,


IdentityType.SamAccountName, txtUsername.Text)
If user IsNot Nothing Then

user.DisplayName = txtDisplayName.Text

user.Description = txtDescription.Text

user.Save()

MessageBox.Show("Utilisateur modifié avec succès.")

Else

MessageBox.Show("L'utilisateur n'a pas été trouvé.")

End If

End Using

Catch ex As Exception

MessageBox.Show("Une erreur s'est produite : " & ex.Message)

End Try

End Sub

Private Sub btnDeleteUser_Click(sender As Object, e As EventArgs) Handles btnDeleteUser.Click

Try

Using context As New PrincipalContext(ContextType.Domain, domainName, adminUsername,


adminPassword)

Dim user As UserPrincipal = UserPrincipal.FindByIdentity(context,


IdentityType.SamAccountName, txtUsername.Text)

If user IsNot Nothing Then

user.Delete()

MessageBox.Show("Utilisateur supprimé avec succès.")

Else

MessageBox.Show("L'utilisateur n'a pas été trouvé.")

End If

End Using

Catch ex As Exception

MessageBox.Show("Une erreur s'est produite : " & ex.Message)


End Try

End Sub

End Class

Dans cet exemple, j'ai créé une interface utilisateur avec des champs pour le nom
d'utilisateur, le mot de passe, le nom affiché et la description. Trois boutons permettent
d'ajouter, modifier et supprimer un utilisateur. N'oubliez pas de personnaliser les noms des
contrôles et d'ajuster le code en fonction de vos besoins.

code pour gerer le nombre de stock restant

Imports System.Windows.Forms

Public Class StockManagerForm

' Variable pour stocker la quantité en stock

Private stockQuantity As Integer = 100

' Méthode pour mettre à jour l'affichage de la quantité en stock

Private Sub UpdateStockDisplay()

lblStockQuantity.Text = $"Quantité en stock : {stockQuantity}"

End Sub

' Événement déclenché lors du chargement du formulaire

Private Sub StockManagerForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load

UpdateStockDisplay()

End Sub

' Événement déclenché lors du clic sur le bouton "Vendre"

Private Sub btnSell_Click(sender As Object, e As EventArgs) Handles btnSell.Click

' Récupérer la quantité à vendre depuis le champ de texte

Dim quantityToSell As Integer


If Integer.TryParse(txtSellQuantity.Text, quantityToSell) Then

' Vérifier si la quantité à vendre est disponible en stock

If quantityToSell > 0 AndAlso quantityToSell <= stockQuantity Then

' Mettre à jour la quantité en stock

stockQuantity -= quantityToSell

UpdateStockDisplay()

MessageBox.Show($"Vente réussie. Nouvelle quantité en stock : {stockQuantity}")

Else

MessageBox.Show("La quantité à vendre est invalide ou insuffisante en stock.")

End If

Else

MessageBox.Show("Veuillez entrer une quantité valide à vendre.")

End If

End Sub

' Événement déclenché lors du clic sur le bouton "Recevoir"

Private Sub btnReceive_Click(sender As Object, e As EventArgs) Handles btnReceive.Click

' Récupérer la quantité à recevoir depuis le champ de texte

Dim quantityToReceive As Integer

If Integer.TryParse(txtReceiveQuantity.Text, quantityToReceive) Then

' Vérifier si la quantité à recevoir est positive

If quantityToReceive > 0 Then

' Mettre à jour la quantité en stock

stockQuantity += quantityToReceive

UpdateStockDisplay()

MessageBox.Show($"Réception réussie. Nouvelle quantité en stock : {stockQuantity}")

Else
MessageBox.Show("La quantité à recevoir doit être positive.")

End If

Else

MessageBox.Show("Veuillez entrer une quantité valide à recevoir.")

End If

End Sub

End Class

Dans cet exemple, j'ai créé une interface utilisateur simple avec des champs de texte
pour entrer la quantité à vendre et la quantité à recevoir. Deux boutons permettent
de déclencher les opérations de vente et de réception. Les messages de boîte de
dialogue informent l'utilisateur du succès ou de l'échec des opérations.

Vous pouvez personnaliser ce code en fonction de vos besoins spécifiques et intégrer


davantage de fonctionnalités telles que la gestion des produits, la persistante des
données, etc.

Vous aimerez peut-être aussi