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

Résolu
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006 - 7 févr. 2005 à 14:35
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006 - 9 févr. 2005 à 09:18
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

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
8 févr. 2005 à 16:05
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
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
8 févr. 2005 à 16:11
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
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
7 févr. 2005 à 14:37
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
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
7 févr. 2005 à 14:53
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.
0

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

Posez votre question
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
7 févr. 2005 à 15:32
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?
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
7 févr. 2005 à 16:20
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.
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
7 févr. 2005 à 16:33
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 !
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
7 févr. 2005 à 19:17
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.
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
8 févr. 2005 à 08:20
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 !
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
8 févr. 2005 à 08:23
ptite correction, jpense ke ce sera plus simple avec un *.ini non? au moins VB.net interpretera directement les variables non.... ?
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
8 févr. 2005 à 09:02
et au fét pour app.path, c du VB.net donc jdiré meme ke c :
Application.StartupPath & "" & "biblio.mdb;"
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
8 févr. 2005 à 13:35
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
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
8 févr. 2005 à 14:27
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
0
xtrusion Messages postés 51 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 20 mai 2006
9 févr. 2005 à 09:18
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 !!!!!!!!
0