Interdire le copier coller

Soyez le premier à donner votre avis sur cette source.

Vue 11 085 fois - Téléchargée 436 fois

Description

Permet d'interdire le Copier/Coller à partir de votre prog vers un doc Word, Excell...

Source / Exemple :


Option Explicit
Dim Interdit As Boolean

Private Sub cmd_Interdire_Click()
    If Clipboard.GetFormat(vbCFText) Or Clipboard.GetFormat(vbCFRTF) Then
        Clipboard.Clear
    End If
    If cmd_Interdire.Caption = "Interdire le Copier/Coller !" Then
        cmd_Interdire.Caption = "Autoriser le Copier/Coller !"
        Interdit = True
        Exit Sub
    End If
    If cmd_Interdire.Caption = "Autoriser le Copier/Coller !" Then
        cmd_Interdire.Caption = "Interdire le Copier/Coller !"       
        Interdit = False
        Exit Sub
    End If

End Sub

Private Sub cmd_Quitter_Click()
    End
End Sub

Private Sub Form_Load()   
    Interdit = False
End Sub

Private Sub TextDroite_KeyDown(KeyCode As Integer, Shift As Integer)
Dim CTRL_EnfonceD As Integer
Dim Response As Integer
    If Interdit = True Then
        CTRL_EnfonceD = (Shift And KeyCode) > 0       
        If CTRL_EnfonceD Then
            MsgBox "Copier/Coller interdit !" & Chr(10) & "Pour y être autorisé, appuyer sur le bouton." & Chr(13) & Chr(13) & "   ---PL@cidBlue07---", vbExclamation, "   Attention !"          
            If Clipboard.GetFormat(vbCFText) Or Clipboard.GetFormat(vbCFRTF) Then
                Clipboard.Clear
            End If
        End If
    End If
End Sub

Private Sub TextDroite_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Interdit = True Then     
        If Button = 2 Then
            MsgBox "Copier/Coller interdit !" & Chr(10) & "Pour y être autorisé, appuyer sur le bouton." & Chr(13) & Chr(13) & "   ---PL@cidBlue07---", vbExclamation, "   Attention !"
        End If
    End If
End Sub

Private Sub TextGauche_KeyDown(KeyCode As Integer, Shift As Integer)
Dim CTRL_EnfonceG As Integer
Dim Response As Integer
    If Interdit = True Then
        CTRL_EnfonceG = (Shift And KeyCode) > 0       
        If CTRL_EnfonceG Then
            MsgBox "Copier/Coller interdit !" & Chr(10) & "Pour y être autorisé, appuyer sur le bouton." & Chr(13) & Chr(13) & "   ---Pl@cidBlue07---", vbExclamation, "   Attention !"           
            If Clipboard.GetFormat(vbCFText) Or Clipboard.GetFormat(vbCFRTF) Then
                Clipboard.Clear
            End If
        End If
    End If
End Sub

Private Sub TextGauche_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Interdit = True Then       
        If Button = 2 Then
            MsgBox "Copier/Coller interdit !" & Chr(10) & "Pour y être autorisé, appuyer sur le bouton." & Chr(13) & Chr(13) & "   ---Pl@cidBlue07---", vbExclamation, "   Attention !"
        End If
    End If
End Sub

Conclusion :


C 1 truc simple ya peut etre mieux, si vous connaissez faites le savoir! merci !
(C'est mon 1° prog ici alors ne soyez pas trop mechant!)

Codes Sources

A voir également

Ajouter un commentaire Commentaires
kakenette Messages postés 218 Date d'inscription dimanche 1 mai 2005 Statut Membre Dernière intervention 15 novembre 2009 1
6 févr. 2008 à 07:23
le mieu mais un peut lourd serrai d'analyser le clipboard et de detecter si il contient le text precis et a ce moment la effectuer l'operation. car bloquer des actions est un peux inutile du fait que chaques actions peuvent êtres remplacées par une autre de même efficacité. Exemple : Je remplace mon CTRL+C par ALT+D. etc... Mais l'idée est simpas.
danielgrd Messages postés 47 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 22 juin 2005
31 mai 2005 à 14:49
Hmmm! Il y a 2 failles majeures dans ce programme...

1 - La première a déja été dites (En faisant un Cut (CTRL-X) le copier se fait)
2 - Si on appuie sur Enter en même tant que l'on fait le clique droit, et bien le menu contextuel habituel apparait et l'on peut choisir Copier. Même chose pour Coller dans la fenêtre #2.

Je sais que le code date un peu et qu'une meilleure méthode à été trouvée depuis... Je ne fais qu'avertir ceux qui ne le savait pas...

De plus, la méthode de SHAD20020 est une très bonne alternative!!!
shad20020 Messages postés 4 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 5 octobre 2003
3 mars 2004 à 07:55
plus simple un

Private Sub Timer_Timer()
Clipboard.Clear
End Sub

pis sa marche no 1
PlacidBlue07 Messages postés 8 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 25 décembre 2002
21 janv. 2002 à 12:25
G du me planter a Kekpart jessaierai de voir ca mieux!
DolfinCry Messages postés 25 Date d'inscription lundi 14 janvier 2002 Statut Membre Dernière intervention 7 octobre 2002
21 janv. 2002 à 01:00
Juste un probleme, si tu fais un cut, tu va effacer le texte et tu pourra le copier dans un fichier texte ou ailleurs.
@+
Afficher les 10 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.