Erreur de sécurité apré avoir mi l'appli sur le rezo ...

Résolu
Signaler
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006
-
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006
-
Salu all ! :P

Voila, j'ai enfin fini mon application, ms g un tit pb :
C une appli ki est stockée sur le serveur de fichiers et kd mon appli se connecte a la BDD ACCESS a partir du rezo, voici le message d'erreur ke je recois ... Alor ke si j'execute mon appli en local, elle fonctionne a merveille ...

Si kelkin c pk il me met ca, jve bien savoir !

Merci davance tout le monde !

14 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Private
Declare
Function GetPrivateProfileString
Lib "kernel32"
Alias "GetPrivateProfileStringA"
(
ByVal lpApplicationName

As
String,
ByVal lpKeyName
As
String,
ByVal lpDefault
As
String,
ByVal lpReturnedString
As System.Text.StringBuilder,
ByVal nSize
As
Integer,
ByVal lpFileName
As
String)
As
Integer

















' Cette API permet de lire des fichiers
d'initialisations. La fonction retourne 0 si la lecture du fichier
d'initialisation a échoué, sinon elle retourne 1.

'lpApplicationName définit le nom de la
section, (le nom entre [ ] )

'lpKeyName définit le nom de la clef, (valeur à gauche de = )

'lpDefault retourne la valeur par défaut si
la clef n'est pas définie,

'lpReturnedString contient la valeur de la
clef si elle existe sinon elle contient la valeur lpDefault,

'nSize est la taille de la variable
lpReturnedString en octet,

'lpFileName définit le nom du fichier
d'initialisation.





Function
LireINI(
ByVal Entete

As
String,
ByVal Variable
As
String,
ByVal Fichier
As
String)
As
String





Dim defval
As
String = ""



Try





Dim StrBuild

As
New
System.Text.StringBuilder(MAX_ENTRY)



Dim Ret
As
Integer = GetPrivateProfileString(Entete, Variable,
defval, StrBuild, MAX_ENTRY, Fichier)



Return
StrBuild.ToString



Catch





Return defval



End
Try





End
Function


Heureusement que les collègues sont là
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
C'est un exemple d'utilisation qui marche dans un de nos projets.



MAX_ENTRY était une constante définie à 24642 pour le projet d'ou viens ce code.



Pour un chemin tu peut la définir à 255
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

flutio, vous ne devez pas voire l'image a mon avis .... Le systeme pr inserer une image ds les posts n'a pa l'air au point, il met l'adresse locale du fichier : '[file:///C:/Documents%20and%20Settings/Administrateur/Bureau/Erreur.JPG file:///C:/Documents%20and%20Settings/Administrateur/Bureau/Erreur.JPG]'

Voici donc la bonne adresse pr visualiser l'erreur :

http://xtrusion62.free.fr/ImaGes/Erreur.JPG

Merci davance ! :P
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Ben quoi dire si ce n'est comme te dit le message d'erreur,
contacte ton administrateur réseau pour savoir si les paramètres de
sécurité te permettent d'accéder en lecture/ecriture à ton fichier sur
le réseau.
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

ben je les ai contacté et selon eux, ca vient de mon appli et pas du serveur ....

c pr ca ke je m'interroge ...

Personne n'a deja rencontré cette erreur au paravant?
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Je connais peu de chose au niveau BDD, je n'essairais pas de te donner des pistes foireuses.



Au niveau réseau, il peut y avoir de nombreuses sources d'erreur avec les droit d'accès des utilisateurs.



Un petit détail tout de même, ton appli ne checherai-t-elle pas la bdd en local ?



je m'explique, tu as mis ton appli sur le réseau, la bdd dans le même
répertoire et ton appli cherche la bdd dans le répertoire d'exécution.
Ca marche en local, c'est bon, c'est normal.



Lorsque tu lance ton appli à travers le réseau, elle s'éxécute quand
même en local sur ton PC et cherche la bdd en local sur ton PC et non
pas sur le réseau.



C'est une hypothèse, je ne sais si elle est plausible. Mais ça mérite d'etre vérifier, je pense.
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

ben pour le chemin de la connection, je mets d'origine :

app.path/biblio.mdb.

et ca fonctionne... La sur le rezo, l'appli se lance, les pages saffichent, ms le pb intervient dé ke je tente un accès a ma base, ke ce soit en lecture ou en ecriture ....

Il cherche bien la BDD dans G:\DVA\BiblioFAL62 (vu ke c la ou se trouve l'exe de mon appli)

Ms il me dit apparement ke je n'ai pas les droits d'accès car c une zone sensible ....

commen faire ... LOL
Ya pa un truc du style 'filepermissionaccess' ou un truc du genre .... ?

Et si jamais l'appli est sur mon poste local, et ke je lui di d'aller chercher la BDD directement dans G:\DVA\BiblioFAL62, ca marche sans probleme. Mais du coup jpe plu déplacer ma BDD sinon il ne trouve plu le chemin ... D'ou le dilemne ! :P

Please, HELP ME ! :P apré ca g fini mon Projet de Stage, ms tant ke c pa reglé .... pe pa passer a la phase de test ....

Merci davance !
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Tout d'abord app.path/biblio.mdb est, je présume une simplification d'écriture de ton post. La syntaxe exacte est bien entendu app.path & "\biblio.mdb"



Petit détail, je ne veux pas dire de bétises, mais il me semble que
l'accès à une bdd est toujours en lecture/ecriture même si tu ne fais
que de la lecture.



Je me rend compte que mes notions de réseaux sont plutot vagues.



Pour ton problème, essaye de passer le lecteur G en zone sure (je ne sais pas comment mais l'admin rezo doit pouvoir t'aider).



Pour 'filepermissionaccess', je suis comme toi, il me semble de quelques chose mais je ne retrouve pas.



Sinon solution de dernière chance et façon un peu bricolage :

essaye de te créer un fichier texte que tu stocke avec ton exe, dans
lequell tu enregistre le chemin d'acces à ta base. Dans ton soft tu
viens lire ce fichier et tu sais ou est la base. Et si tu déplace la
base tu as juste à modifier le fichier texte avec notepad.



Je sais c'est pas propre du tout mais je sèche complètement.
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

héhé j'y ai pensé a cette solution la, ms je n'ai malheureusement aucune idée de la marche a suivre pr stocker le chemin de ma BDD ds un fichier *.txt ou *.xml ( jcrois kon pe le faire aussi en xml ms bon, *.txt, si ca marche ce sera deja pa mal ! :P )

Donc si jamais tu as une piste pr le faire, jsuis preneur paske je n'ai meme aucune idée de ce kil fo faire .... je v chercher en meme temps, si je trouve jte previens !

Merci d'avance Casy !
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

ptite correction, jpense ke ce sera plus simple avec un *.ini non? au moins VB.net interpretera directement les variables non.... ?
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

et au fét pour app.path, c du VB.net donc jdiré meme ke c :
Application.StartupPath & "" & "biblio.mdb;"
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Pour App.path, j'avais pas vu que tu codais en .NET, je ne suis pas un spécialiste mais je te fais confiance.



Pour un fichier ini tu peux faire un fichier comme ceci:

[conf]

chemin=G:\dva\biblio.mdb

ensuite dans ton code tu lit le fichier avec l'api GetPrivateProfileString



Pour un fichier texte tu peux utiliser un FileSystemObject, je crois
que c'est très simple en .NET, perso j'ai pas l'habitude de l'utiliser
(car y a pas longtemps que je l'ai découvert).



Ou sinon la méthode classique (attention syntaxe VB6) :



numfile = freefile

open CheminTonFichierTXT for input as numfile

line input #numfile,cheminBDD

close numfile



et tu récupère le chemin de ta base dans la variable cheminBDD


Voila, en espérant que tu arrives à la fin de ton projet
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

lol si kelkin a plus l'habitude de VB.net .... paske la, meme la MSDN ke j'ai installée ne conné pa GetPrivateProfileString.... embetant ! lol
Messages postés
51
Date d'inscription
mardi 11 janvier 2005
Statut
Membre
Dernière intervention
20 mai 2006

COMMEN T LE MEILLEUR CASY !!!! :P

Ca marche nikel krome !!!! ca fé plaisir ca di donc !! :P

J'arrive o boulot, g une réponse, et hop, en 10 minutes ca fonctionne ! ;o)

Bon ben voila, me reste plu ka réussir à masquer des colonnes indésirables de mes datagrids et mon projet est terminé !

merci beaucoup en tout cas !!!

Et vive VBFrance sans ki joré jamais pu terminer ce projet !!!!!!!!