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

Importation modules protégés d'une base de données endomagée

8 réponses
Avatar
William Kameron
Comment faire pour Importer les modules, les formulaires, les états d'une
base de données endomagée lorsque le code visual basic et protégé par un mot
de passe que l'on connait ? L'importation se passe bien pour les tables et
les requêtes et les formulaires ou état ne disposant pas de code visual
basic. Mais pour ceux qui en contiennent ou les modules
DoCmd.TransferDatabase renvoit le message :
<<Erreur d'exécution '2017' Microsoft aide à proteger ce projet Visual Basic
pour applications avec un mot de passe. Vous devez entrer le mot de passe
dans Visual Basic avant d'effectuer cette opération>>
Il me semble qu'il faut introduire le mot de passe quelque part, j'ai essayé
de le donner, probablement je ne sais où.

8 réponses

Avatar
The_Team
Bonjour,

Si tu connais le mot de passe, où est le problème ?

Il suffit de l'enlever dans le module avant importation.

--
Lucky_Team

http://www.access-developpement.com

"William Kameron" a écrit dans le
message de news:
Comment faire pour Importer les modules, les formulaires, les états d'une
base de données endomagée lorsque le code visual basic et protégé par un
mot
de passe que l'on connait ? L'importation se passe bien pour les tables et
les requêtes et les formulaires ou état ne disposant pas de code visual
basic. Mais pour ceux qui en contiennent ou les modules
DoCmd.TransferDatabase renvoit le message :
<<Erreur d'exécution '2017' Microsoft aide à proteger ce projet Visual
Basic
pour applications avec un mot de passe. Vous devez entrer le mot de passe
dans Visual Basic avant d'effectuer cette opération>>
Il me semble qu'il faut introduire le mot de passe quelque part, j'ai
essayé
de le donner, probablement je ne sais où.



Avatar
William Kameron
Pour récupérer les modules d'une base endomagée dont je connait le mot de
passe je voudrais utiliser la commande :
DoCmd.TranferDatabase acImport, "Microsoft access", "C:MaBDS.mdb",
acModule, NomModule
Comment je fais ?


Bonjour,

Si tu connais le mot de passe, où est le problème ?

Il suffit de l'enlever dans le module avant importation.

--
Lucky_Team

http://www.access-developpement.com

"William Kameron" a écrit dans le
message de news:
Comment faire pour Importer les modules, les formulaires, les états d'une
base de données endomagée lorsque le code visual basic et protégé par un
mot
de passe que l'on connait ? L'importation se passe bien pour les tables et
les requêtes et les formulaires ou état ne disposant pas de code visual
basic. Mais pour ceux qui en contiennent ou les modules
DoCmd.TransferDatabase renvoit le message :
<<Erreur d'exécution '2017' Microsoft aide à proteger ce projet Visual
Basic
pour applications avec un mot de passe. Vous devez entrer le mot de passe
dans Visual Basic avant d'effectuer cette opération>>
Il me semble qu'il faut introduire le mot de passe quelque part, j'ai
essayé
de le donner, probablement je ne sais où.








Avatar
William Kameron
Je ne puis accéder à ma base de donnée car elle est endomagée. J'ai beau
laissé coché la case "réparer... " cela ne donne aucun résultat. Je me suis
donc résolu à importer les élément dans une nouvelle base. Mais...


Pour récupérer les modules d'une base endomagée dont je connait le mot de
passe je voudrais utiliser la commande :
DoCmd.TranferDatabase acImport, "Microsoft access", "C:MaBDS.mdb",
acModule, NomModule
Comment je fais ?


Bonjour,

Si tu connais le mot de passe, où est le problème ?

Il suffit de l'enlever dans le module avant importation.

--
Lucky_Team

http://www.access-developpement.com

"William Kameron" a écrit dans le
message de news:
Comment faire pour Importer les modules, les formulaires, les états d'une
base de données endomagée lorsque le code visual basic et protégé par un
mot
de passe que l'on connait ? L'importation se passe bien pour les tables et
les requêtes et les formulaires ou état ne disposant pas de code visual
basic. Mais pour ceux qui en contiennent ou les modules
DoCmd.TransferDatabase renvoit le message :
<<Erreur d'exécution '2017' Microsoft aide à proteger ce projet Visual
Basic
pour applications avec un mot de passe. Vous devez entrer le mot de passe
dans Visual Basic avant d'effectuer cette opération>>
Il me semble qu'il faut introduire le mot de passe quelque part, j'ai
essayé
de le donner, probablement je ne sais où.










Avatar
3stone
Salut,

"William Kameron"
| Je ne puis accéder à ma base de donnée car elle est endomagée. J'ai beau
| laissé coché la case "réparer... " cela ne donne aucun résultat. Je me suis
| donc résolu à importer les élément dans une nouvelle base. Mais...


Regarde dans l'aide au sujet de "TransferDatabase"

- Dans la chaine qui représente la source, tu dois pouvoir déclarer l'utilisateur et le password...


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
William Kameron
Je vois bien l'exemple suivant :
DoCmd.TransferDatabase acLink, "ODBC Database", _
"ODBC;DSNÚtaSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
& "DATABASE=pubs", acTable, "Authors", "dboAuthors"

Il s'agit d'une connexion ODBC. Comment transcrire cela pour une importation
d'une Base de données Access ?

Voici ce que j'ai ecrit et cela ne marche pas :
DoCmd.TransferDatabase acLink, "ODBC Database", _
"ODBC;DSNÚtaSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
& "DATABASE=pubs", acTable, "Authors", "dboAuthors"

Je souhaite obtenir une commande équivalente s'il y a lieu pour les objet de
type acModule dans une base de type Microsoft Access.


Salut,

"William Kameron"
| Je ne puis accéder à ma base de donnée car elle est endomagée. J'ai beau
| laissé coché la case "réparer... " cela ne donne aucun résultat. Je me suis
| donc résolu à importer les élément dans une nouvelle base. Mais...


Regarde dans l'aide au sujet de "TransferDatabase"

- Dans la chaine qui représente la source, tu dois pouvoir déclarer l'utilisateur et le password...


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
Gilles MOUGNOZ
Je vois bien l'exemple suivant :
DoCmd.TransferDatabase acLink, "ODBC Database", _
"ODBC;DSNÚtaSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
& "DATABASE=pubs", acTable, "Authors", "dboAuthors"
Je souhaite obtenir une commande équivalente s'il y a lieu pour les objet
de
type acModule dans une base de type Microsoft Access.



Bonjour, William

Regarde sur ce lien pour réparer ta base par ligne de commande:
http://loufab.developpez.com/raccourci
en particulier, la section 3.2
Je sais qu'il existe d'autres outils de réparation mais je n'ai ni noms ni
liens, désolé!
Une petite recherche sur Google devrait de trouver tout cela...

Bonne continuation

Avatar
William Kameron
C'est parfait Gilles. C'est OK pour la réparation de ma base car en suivant
tes instructions j'ai utilisé plusieurs fois la commande :
"C:...MSACCESS.EXE" "Mabd.mdb" /Repair /decompile

Zut ! où avais-je la tête !

En fouinant chez jessy sur http://access.jessy.free.fr/ j'ai vu une fonction
ImportAllObject similaire à celle que j'ai écrite qui bute sur le Mot de
passe. Probalblement la solution doit se trouver dans l'instruction
"OpenDatabase(StrMsAccessDBName, StrOptions)"
C'est à voir !

Mon problème est résolu puisque ma base s'ouvre à nouveau.

Merci.


Je vois bien l'exemple suivant :
DoCmd.TransferDatabase acLink, "ODBC Database", _
"ODBC;DSNÚtaSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
& "DATABASE=pubs", acTable, "Authors", "dboAuthors"
Je souhaite obtenir une commande équivalente s'il y a lieu pour les objet
de
type acModule dans une base de type Microsoft Access.



Bonjour, William

Regarde sur ce lien pour réparer ta base par ligne de commande:
http://loufab.developpez.com/raccourci
en particulier, la section 3.2
Je sais qu'il existe d'autres outils de réparation mais je n'ai ni noms ni
liens, désolé!
Une petite recherche sur Google devrait de trouver tout cela...

Bonne continuation






Avatar
Gilles MOUGNOZ
C'est parfait Gilles. C'est OK pour la réparation de ma base car en
suivant
...
En fouinant chez jessy sur http://access.jessy.free.fr/ j'ai vu une
fonction
ImportAllObject similaire à celle que j'ai écrite qui bute sur le Mot de
passe. Probalblement la solution doit se trouver dans l'instruction
"OpenDatabase(StrMsAccessDBName, StrOptions)"
C'est à voir !
Mon problème est résolu puisque ma base s'ouvre à nouveau.
Merci.


Bonjour, William

Très heureux pour toi !
Pour l'ouverture de la base, je pense que tu peux seulement lui indiquer le
mot de passe de la base de données, voire le MDW à utiliser avec utilisateur
et mot de passe.
Le mot de passe des modules se situe à un autre niveau et, à mon avis, il ne
doit pas être possible de l'indiquer à Access par code.
Et c'est peut être mieux ainsi ! Imagine que tu ais seulement protégé ton
code et pas ta base, ce ne doit pas être très compliqué de créer un
programme qui va chercher le mot de passe de tes modules. Bye bye, ton code
protégé...
Ceci dit, ce "crack" doit bien avoir déjà été fait, par un moyen ou un
autre. Un de mes professeurs avait l'habitude de nous rappeler que "tout ce
qui peut être fait par programme peut être défait par programme". Reste à
savoir le temps que l'on veut y consacrer...

Bonne continuation