Page 1 sur 3

Verrouillage de la BDR et DLL ActiveX en pure (Titre changé)

Publié : mar. 22/mai/2007 17:21
par Kwai chang caine
Bonjour à tous

J'aimerais savoir, sil un pc pourrait avoir sa BDR completement vérouillée de sorte que l'on ne puisse rien y ecrire dedans.
Ou bien est-ce impossible que toutes les clefs soit vérouillées, puisque par définition la BDR est un fichier qui change constament au fur et à mesure de l'action de chaque programme.

Je vous pose cette question car je bosse dans une boite ou ils ont tendance à verrouiller l'inverrouillable :twisted:

Je voudrais faire un programme qui fait appel a une DLL en VB, ce pourrait etre aussi en pure, puisque j'utilise les deux simultanément, mais ce qui est sûr, c'est qu'en VB il est apparement impossible d'utiliser une DLL en la mettant juste dans le meme repertoire sans l'inscrire dans la BDR.

Donc je voudrais etre sur que mon programme fonctionne à tous les coups et sur n'importe quel PC meme si il a la plus grosse ceinture de chasteté du monde :lol:

Pour inscrire cette DLL, il utilisent ce code au lancement du prg:

Code : Tout sélectionner

Dim plop As Object
Shell "regsvr32 /s dll_de_test.dll"
Set plop = CreateObject("Nom_de_la_dll.Bibliotheque_1")
plop.bob
Est il donc possible qu'un PC refuse d'executer ce code.

Je m'excuse de poser exceptionnellement une question plus orientée sur VB que pure, mais je connais personne dans les autres forums.
Je sais aussi que pas mal de programmeur de ce forum connaissent plusieurs languages et aussi profondement le fonctionnement de windows.

Merci
Bonne journée

Publié : mar. 22/mai/2007 17:45
par minirop
es tu obligé d'enregistrer ta DLL ?

Publié : mar. 22/mai/2007 20:13
par Kwai chang caine
Bah, de tout ce que j'ai lu sur le vb, apparement, il est impossible de faire fonctionner une DLL VB, si on ne l'enregistre pas dans la BDR.

Ou alors on peut peut-etre lui mettre un vrai chemin, style "c:\cheminDll\dll" mais on ne peux pas utiliser de variables (un peu comme les includebinary de pure), donc impossible de récupérer le chemin de l'appli en cours.

C'est pour cette raison que j'aurais aimé savoir si un admin peux blindé la BDR pour qu'aucune écriture ne s'y effectue.

Ou bien si il peux le faire, quelle serait la clef impossible à verrouiller pour un admin car windows y ecrit constament

Publié : mar. 22/mai/2007 22:04
par Backup
Kwai chang caine a écrit : C'est pour cette raison que j'aurais aimé savoir si un admin peux blindé la BDR pour qu'aucune écriture ne s'y effectue.
non ! c'est impossible !

car sinon le system n'aimerai pas ! et l'ordi planterai vite :)

Publié : mar. 22/mai/2007 22:36
par Thierryfr
si
c'était possible avec windows 95 et 98

mais pas avec Xp

Publié : mar. 22/mai/2007 22:47
par Backup
Thierryfr a écrit :si
c'était possible avec windows 95 et 98
ha ? comment ?

ne me dit pas que c'est en modifiant l'attribut de (system.dat et user.dat) ...
mem sous 95 seul le system pouvait changer ces attributs sur ces 2 fichiers !

la seul chose que l'on peut faire, c'est empêcher l'utilisation de REGEDIT

mais une écriture logiciel est toujours possible !:D

voici une adresse interressante :
http://forum.zebulon.fr/lofiversion/ind ... 63815.html

Publié : mer. 23/mai/2007 7:37
par Droopy
On peut bloquer l'accès à la base de registre / ou à certaines clés via regedit.

Lancer Regedit / Menu edition / Autorisations.

On gère les autorisations un peu comme les droits NTFS. ( avec héritage )

Publié : mer. 23/mai/2007 11:26
par Backup
Droopy a écrit :On peut bloquer l'accès à la base de registre / ou à certaines clés via regedit.

Lancer Regedit / Menu edition / Autorisations.

On gère les autorisations un peu comme les droits NTFS. ( avec héritage )
heu ! t'es sur que ce n'est pas seulement Regedit que tu limite la ?
(j'ai la bulle de tester si apres avoir bloqué de cette maniere, on ne puis pas ecrire a l'aide de Purebasic... ?? , perso j'en doute ! : ) )

Publié : mer. 23/mai/2007 11:34
par Kwai chang caine
Merci de toutes vos réponses.

@Droopy

Oui oui,je sais que l'on peut bloquer l'acces à la base de registre, la meilleure preuve en est, que dans ma boite on peut meme pas démarrer regedit.
Par contre y'a d'autre giciel freeware, comme regedit et eux ils s'en balance que c'est bloqué ils ont acces malgrés l'interdiction 8)

@Dobro

Au fait il est top ton lien 8)

A mettre dans les favoris "d'office" (comme dirais crosoft) :lol:

@Dobro et ThierryFr

Et pour 2000 c'est aussi impossible à vérouiller completement ?????
Vous me rassurez donc un peu, est ce qu'a votre avis le "regsvr32 /s" peut etre bloqué en 2000 ou XP.
Car c'est ma crainte du fait qu'il faille que je declare cette satané DLL de ......de chez bilou

Publié : mer. 23/mai/2007 14:57
par minirop
Kwai chang caine a écrit :Oui oui,je sais que l'on peut bloquer l'acces à la base de registre, la meilleure preuve en est, que dans ma boite on peut meme pas démarrer regedit.
Par contre y'a d'autre giciel freeware, comme regedit et eux ils s'en balance que c'est bloqué ils ont acces malgrés l'interdiction 8)
normal car dans ton cas c'est regedit qui est bloqué car ut dois pas avoir accès au dossier windows (ou se trouve regedit) par contre le registre est toujours accessible (mais pas sûr que tu y es accès car ce fichier se trouve dans le dossier windows.)
Kwai chang caine a écrit :Vous me rassurez donc un peu, est ce qu'a votre avis le "regsvr32 /s" peut etre bloqué en 2000 ou XP.
oui

Publié : mer. 23/mai/2007 15:41
par Kwai chang caine
Merci minirop

Mauvaise nouvelle :cry:
Donc d'apres tes dires il faut que je laisse tomber la direction de la DLL a enregistrer, car il peut se produire qu'un PC me jette et donc que mon prg ne puisse pas utiliser sa DLL

Par contre j'ai continué a creuser dans les DLL.
Alors la c'est pas du gateau.
Apres moulte lecture sur les sites VB, il parraitrait qu'il y a 2 sortes de DLL

Les DLL dites "normales" utilisée en C et apparement en Pure
Les DLL ActiveX utilisée en VB et VBA enfin toutes les daubs de crosoft.

Bien sur MONSIEUR peut pas faire comme tout le monde, MONSIEUR (Comme dab)

Grace au site anglais (Pardon dobro :lol:),

http://www.purebasic.fr/english/viewtop ... dll+sample

Je suis arrivé à comprendre (Alléluia) comment créer une simple (comme dab en pure) DLL donc dite normale, enfin je pense....Puis à la commander en VB.

Alors la, chapeau, j'ai couiné comme un goret qu'on attrape, tellement j'etais content de les faire converser tous les 2.
Faudra que je me méfie au boulot les collegues vont croire que je joue et que j'ai gagné une play station :lol:

Donc un appel de la DLL Pure par un exe VB et ça marche du feu de dieu :D
Pas besoin d'enregistrement dans la BDR et tout le tremblement (de terre)
Il suffit juste de dire que la Dll Pure est dans le dossier de l'exe VB.

Par contre pour les p.... de DLL ActiveX, evidement j'ai fait la manoeuvre inverse et peau de z.. ça marche pas (normal) :twisted:
Il faudrait bien apparement les enregistrer :?

Voila, pour l'instant l'etat de mes recherches.

Alors public a vos télécommandes si vous connaissez la réponse , votez :lol:
J'aimerais connaitre l'avis du public :lol:

Publié : mer. 23/mai/2007 15:57
par brossden
Kwai machin truc chose !

Les ActiveX ne sont pas (à ma connaissance) des DLL mais des Objets qui peuvent comme WebGadget qui est un ActiveX de Iexplorer !!!

Pour Utiliser ces ActiveX ils faut en général les installés en ayant la licence d'utilisation !

Enfin je crois .......

Publié : mer. 23/mai/2007 16:04
par minirop

Publié : mer. 23/mai/2007 16:14
par brossden
Ben je suis pas trop C*N alors !!!! J'avais juste !

Publié : mer. 23/mai/2007 16:41
par Kwai chang caine
@Minirop et mon ami denis

Merci pour le lien tres enrichissant, c'est vrai on y pense jamais a Wikipedia :?

J'ai tout lu freud, j'ai compris une bonne partie, mais en clair ça veut pas dire que les DLL sont pareilles que celle de Pure ou C ????

Parceque si oui, pourquoi ça marche pas dans l'autre sens :?