Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Detournement d'événement (Controle d'utilisation).

16 réponses
Avatar
Eric Marcastel
Bonjour,
C'est la journée des questions...

Je cherche a vérouiller mon application soit sur demande, soit aprés une
certaine durée sans action par l'utilisateur.

Biensur il y a la solution de l'écran de veille, mais la sécurité n'est pas
la même (il peut être désactivé..), que l'obligation de saisir a nouveau un
mot de passe aplication.

J'ai envisagé plusieurs possibilité, mais je n'ai pas trouvé de solution:

1/ Dérouter l'interuption du clic droit de la souris dés le lancement de mon
application, pour qu'elle appel, une petite routine de contrôle (mais je ne
sais pas dérouter l'interruption, et encore moins rendre le focus au champ à
l'origine.
2/ Mettre dans tous mes bouton un appel a cette petite routine, cela me
parait plus facile à mettre au point, mais la mise en place sur toutes les
touches, champs et autre sera un vrai casse-tête!!!
3/qu'il existe une solution Windev...Mais je n'ai pas trouvé,
4/Que quelqu'un ici est déja eu ce genre de problème?! Et, ai trouvé une
solution, et qu'il veuille bien la partager.

bon, je cherche.. Si je trouves, je promet une réponse..

Salutations

Eric Marcastel

6 réponses

1 2
Avatar
Fabrice Burghgraeve
bonjour.

"Michel Moreno" a écrit dans le message de
news:bn0tmm$rl6a8$
Bonjour,

> Je cherche a vérouiller mon application soit sur demande, soit aprés une
> certaine durée sans action par l'utilisateur.
>
Pour la durée ce que je ferais :
mettre une variable globale dans le projet
TimeOut est une chaine
deux evenements
evenement("ReinitialiseTimetout","*.*",513)
evenement("ReinitialiseTimetout","*.*",256)
513 : clic gauche de la souris , 256 : 1 touche enfoncée
"*.*" : tous les champs de toutes les fenetres


(...)

Ca a l'air super !
je vais mettre ca en place des maintenant ca a l'air bien mieux que la
solution qu'on avait adoptee jusque la...
un detail : dans un repertoire de windev, il y a un fichier winconst.wl qui
contient la definition des constantes.
Je vais l'utiliser : WM_KEYDOWN et WM_LBUTTONDOWN pour un non specialiste de
ces choses comme moi c'est mieux :)


--
Fabrice Burghgraeve
Computer & Services
suivez ce lien pour me repondre en prive :
http://cerbermail.com/?I3GMPRuXDD
Avatar
Eric Marcastel
Rebonjour,

Dans le cas de ouvre(Fenêtre), les fenêtres de la lignée directe sont bien
bloquées, mais pas les soeurs de le fenêtre de départ,
Mon application a une FenetrePrincipale, dans laquelle j'ouvre des fenêtres
Soeur (et non fille), l'ouverture d'une fenêtre de blocage à partir de le
fenêtre principale, la bloque, mais ne bloque pas les fenêtre soeur. J'ai
peut être tord d'ouvrir les fenêtres en soeur, mais cela donne une souplesse
que je voudrais conserver.
Par contre rajouter le code suivant dans votre procédure Globale
"ReinitialiseTimetout"
TimeOut=HeureSys() //existant reinit timer
//Force la fenêtre de blocage sur tout les événement
SI PAS FenEtat(VerrouillageApplication)=Inexistant ALORS
FenEtat(VerrouillageApplication,DessusTout)
FIN
La fenêtre doit avoir comme paramètre de position: Maximisée à l'ouverture
Et dans ce cas, même accès au autres application est bloqué (Lors de mon
test, il a fallut que je ferme par clic droit dans la barre de tache)
Je vais essayer FenEtat(VerrouillageApplication,Dessus) pou ne bloquer que
les fenêtres de mon appli.

Merci, pour l'aide et cela confirme que de l'union naît la force (ou que de
la discussion jailli l'idée-> là mon patron est très réticent...pourtant)

Bonne journée

eric marcastel

"Michel Moreno" a écrit dans le message de
news:bn2nsj$rh2dr$
Eric Marcastel wrote:
> Bonjour,
>
Bonjour

> Il faut verrouiller l'ensemble des fenêtres en cours d'utilisation, là
> aussi, j'ai plusieurs idées mais pas de bonne solution, alors!!!
>
> Je précise que je fonctionne avec des fenêtres non modales, et en plus


de la
> fenêtre "Menu principal", il peut y avoir, plusieurs fenêtres Soeurs


(qui
> peuvent prendre le focus, indépendament).
ben, il me semble (pratiquement sur en 5.5) que si t'ouvres 1 fenetre
modale , les fenetres filles ou soeurs sont bloquées. Donc dans ton cas,
dans ta procedure "maprocedureclicdroitoutimeout" il te suffit de faire :
ouvre("FenetreBloquante")

>
> Salutations
>

Salutations

> Eric Marcastel
>

Michel Moreno



Avatar
Pierre-Yves TAVERNIER
J'ai fait un exemple un jour :)

Je l'avais peut être déposé sur windevasso.org mais je ne m'en rappelle
plus...

Je le cherche et essaie de vous le faire parvenir.
C'est assez simple et je pense qu'en 7.5 cela fonctionnera mieux qu'en 5.5.

PYT
"Eric Marcastel" a écrit dans le message de
news:
Bonjour,
Hook?
Fonction permettant le contrôle (monitoring) des messages d'entrée-sortie
d'une application. Autre définition possible : fonction permettant une


plus
grande facilité dans l'adjonction de fonctionnalités nouvelles au
programme.(sic internet)

Bien, Mais comment faire sous Windev?

Merci,

eric marcastel


"Pierre-Yves TAVERNIER" a écrit dans le
message de news:3f9412c3$0$10406$
> bonjour,
>
> pour savoir si l'utilisateur a fait une action, il faut utiliser un


hook.
>
> PYT




Avatar
PYT
Bonjour,

Voici un exemple de hook sur une fenêtre ouinon. La position et les dimension
sont modifiées.

Cordialement

PYT

*******************************************
GLOBAL
hHook est un entier
HCBT_ACTIVATE est un entier = 5
WH_CBT est un entier = 5

***************************************
PROCEDURE CBTProc(nCode est un entier, wParam est un entier,lParam est un entier
)

hwnd est un entier
IF(nCode<0) THEN
RENVOYER AppelDLL32("user32","CallNextHookEx" , hHook, nCode, wParam, lParam)
END


SELON nCode
CAS HCBT_ACTIVATE :
hwnd = wParam

AppelDLL32("user32","MoveWindow" , hwnd, 0, 0, 200, 200, Vrai)

RENVOYER 0
FIN


RENVOYER AppelDLL32("user32","CallNextHookEx" , hHook, nCode, wParam, lParam)

*********************************
PROCEDURE OuiNonEtendue(texte est une chaîne)

rep est un entier

hHook = API("user32","SetWindowsHookExA" , WH_CBT, &CBTProc,Null,API("kernel32",
"GetCurrentThreadId" ))

rep = OuiNon(texte)

AppelDLL32("user32","UnhookWindowsHookEx" , hHook)


RENVOYER rep

**********************

SI OuiNonEtendue("Femer la fenêtre ?!") ALORS
Ferme
FIN

***************

--
Ce message a été posté via la plateforme Web club-Internet.fr
This message has been posted by the Web platform club-Internet.fr

http://forums.club-internet.fr/
Avatar
Laurent Imbert
Juste une question la, c'est sous quel windows ?
parceque sous W2000 ou Xp, le controle de veille par mot de passe sécurisé
est OK dans une certaine mesure, avec l'option du mot de passe obligatoire
pour tous les utilisateurs.
Dans le cas ou c'est pour une sécurisation supplèmentaire, j'en appelle au
parano car, aujourd'hui il n'existe pas de système vraiment infaillible. Je
dirai même plus, ils sont tous plutot facile à contourner, W2000 NTFS
sécurisé peut être contourné si on sai comment s'y prendre, donc en
conclusion, inutilede devenir parano, car si j'ai bien compris la question
originale, c'est pour créer un sécurisation (de veille) sur des postes.
Si c'est sous w98,95,NT ou autre, je comprend, mais ce serai plus simple et
moins couteux de prendre la licence WinXP par rapport au prix temp/homme que
prendra ton appli.
Si c'est pour Win 2000 ou XP, recherche l'aide de windows qui t'expliquera
comment faire pour sécuriser ton poste.Si c'est pour renforcé la sécurité,
je répéte, ne devient pas parano, tu ne travaille pas pour la cia je pense.
Se sera beaucoup de temp perdu pour rien, si un gars peut passer la sécurité
Windows, il passera la tienne avec autant de facilité !

O :

"Eric Marcastel" a écrit dans le message de
news:
Bonjour,
C'est la journée des questions...

Je cherche a vérouiller mon application soit sur demande, soit aprés une
certaine durée sans action par l'utilisateur.

Biensur il y a la solution de l'écran de veille, mais la sécurité n'est


pas
la même (il peut être désactivé..), que l'obligation de saisir a nouveau


un
mot de passe aplication.

J'ai envisagé plusieurs possibilité, mais je n'ai pas trouvé de solution:

1/ Dérouter l'interuption du clic droit de la souris dés le lancement de


mon
application, pour qu'elle appel, une petite routine de contrôle (mais je


ne
sais pas dérouter l'interruption, et encore moins rendre le focus au champ


à
l'origine.
2/ Mettre dans tous mes bouton un appel a cette petite routine, cela me
parait plus facile à mettre au point, mais la mise en place sur toutes les
touches, champs et autre sera un vrai casse-tête!!!
3/qu'il existe une solution Windev...Mais je n'ai pas trouvé,
4/Que quelqu'un ici est déja eu ce genre de problème?! Et, ai trouvé une
solution, et qu'il veuille bien la partager.

bon, je cherche.. Si je trouves, je promet une réponse..

Salutations

Eric Marcastel







Avatar
Romain PETIT
"Laurent Imbert" avait énoncé :
[...]
je répéte, ne devient pas parano, tu ne travaille pas pour la cia je pense.
Se sera beaucoup de temp perdu pour rien, si un gars peut passer la sécurité
Windows, il passera la tienne avec autant de facilité !



Bonjour,

là n'est pas la question.
Dans certains secteurs, des normes préconisent des méthodologies
spécifiques pour les programmes.
Les rédacteurs de ces normes se fichent de savoir si un verrouillage de
l'application est plus ou moins efficace que le verrouillage par le
système d'exploitation, ils veulent seulement que ce soit l'appli qui
verouille et non le système.
Ou alors, on a le cas où l'identification du user ne se fait pas avec
l'ouverture de session Windows mais avec un user défini dans une base
de donnée.
Dans ce cas, il faut bien que verrouillage ou le délogin se fasse au
niveau de l'application...

--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
1 2