Interdire Copier-Coller traduction

Résolu
danielgrd Messages postés 47 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 22 juin 2005 - 1 juin 2005 à 00:29
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 3 juin 2005 à 17:47
Bonjour,



J'ai aperçu ici : http://www.vbfrance.com/forum.v2.aspx?id=419341



une méthode pour empêcher le copier-coller d'un textbox (surtout le
Coller dans mon cas)... Elle semble bien mais comme je l'ai dit sur
cette page, je ne connais même pas le nom du language dans lequel est
formé cette source...



Comme cette question a déja été répondue, je n'était pas certain que
quelqun allait aller relire ce post... C'est pour cette raison que j'ai
fais ce post...



Merci d'avance

6 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
1 juin 2005 à 08:45
Ben c'est du langage C.



L'équivalent en VB :

Private Function EdProcNoPaste(byval hwnd As Long, byval mssg as long, byval wParam as long, byval lParam as long) as long



if (mssg = WM_PASTE) Then

let EdProcNoPaste = 0

Else

Let AdProcNoPaste = CallWindowProc(oldProcEd, hwnd, mssg, wParam, lParam)

End If



End Function



En gros, il s'agit de la fonction de hook que j'avais proposée à bouv, et que Brunews a implémenté à ma place ;)



Note : la méthode de gobillot (si elle marche, je n'ai pas testé), et
du bidouillage qui consiste à désactiver le textbox lors la souris
clique dessus, mais je doute alors qu'il soit possible de sélectionner
du texte...

La méthode de hook permet de supprimer la copie du texte directement,
ce qui est plus approprié pour ton problème, bien que plus difficile à
mettre en oeuvre !



Perso, je te conseillerais plutôt ceci :

Private Sub Text1_KeyPress(KeyAscii As Integer)



If KeyAscii 22 Then Let KeyAscii 0



End Sub



Ce code te permet de désactiver le CTRL + V dans le textbox => le collage.



Par contre, ca ne te désactive pas le menu du textbox !


DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
3
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
1 juin 2005 à 03:57
Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 2 Then

Text1.Enabled = False

SendKeys ("%")

Text1.Enabled = True

End If

End Sub


Daniel
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
1 juin 2005 à 09:52
ma méthode c'est peut être du bidouillage mais elle a l'avantage de marcher.

elle empêche pas la sélection, seulement l'apparition de la fenêtre couper/copier/coller/sélectionner/ etc...

elle est simple, facile à mettre en oeuvre et beaucoup moins lourde qu'un hook.


Daniel
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
1 juin 2005 à 09:59
Bon je viens de tester ton code, alors en effet, ca ne désactive pas la
sélection, ca désactive le menu contextuel, par contre, ca ne désactive
pas de CTRL+V, donc en combinant nos deux codes, tu devrait retomber
sur du code qui marche bien ;)

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
danielgrd Messages postés 47 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 22 juin 2005
3 juin 2005 à 17:41
Bonjour,



J'ai essayé les deux codes... Le CTRL-V est impossible a effectuer... C'est parfait!



Par contre, pour le menu du clique droit de la sourie, cela ne fonctionne pas très bien...

Si je ne fais qu'appuyer sur le bouton droit de ma sourie, oui cela fonctionne le menu n'apparait pas.

Mais si j'appuie sur le bouton droit et qu'en le laissant appuyé,
j'appuie sur le bouton gauche, le menu apparait quand même... Et la il
est facile de faire un coller...



Merci d'avance
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
3 juin 2005 à 17:47
Erf, oui c'est vrai, forcément. Et là, à part tester par API quels sont
les boutons appuyés de la souris, je ne vois pas trop comment faire
autrement si tu conserve l'algo de gobillot.

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
0
Rejoignez-nous