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

Perplexe ....

5 réponses
Avatar
cpeltier
Bonsoir à tous,

Je suis confronté à un souci de déploiement sur le site de mon hébergeur.

Avant toute explication, je précise que ce que j'ai déployé fonctionne sur
mon serveur personnel sans aucun problème apparent ...

Le comportement que j'observe sur le serveur distant est le suivant :
départ en boucle sur le retour de fonction suivant :

function AccèsBase () As String
on error goto Gesterr
AccèsBase = "Provider=Microsoft.Jet.OLEDB.4.0;Data " & _
"Source=" &
HttpContext.Current.Server.MapPath("db\MaBase.mdb")
exit function

gesterr:
select case err.number
case else
traitererreur()
end function


cette fonction est appelée au niveau d'une procédure "ouvrir dataset"
dans laquelle on trouve :

dim strConnection As String=AccèsBase()

Apparemment, Accès base ne trouve pas la base de donnée et l'instruction
précédente est itérée à l'infini, sans générer d'erreur dans la fonction
accès base ou du moins une erreur qui serait traitée par Gesterr (dans un
fichier de log) ....

Quelqu'un peut il m'aider à débroussailler ??

Merci d'avance de vos suggestions

5 réponses

Avatar
Patrice
Que fait le traitement d'erreur ? (il tente de réessayer ? De préférence
try/catch).

Sinon je ferais une simple page qui m'affiche le chemin trouvé et qui teste
si le fichier est présent pour en avoir le coeur net. Le db ne me plait pas
trop non plus (risque de renvoyer un chemin différent selon le chemin de la
page courante).

--
Patrice

"cpeltier" a écrit dans le message de
news:
Bonsoir à tous,

Je suis confronté à un souci de déploiement sur le site de mon hébergeur.

Avant toute explication, je précise que ce que j'ai déployé fonctionne sur
mon serveur personnel sans aucun problème apparent ...

Le comportement que j'observe sur le serveur distant est le suivant :
départ en boucle sur le retour de fonction suivant :

function AccèsBase () As String
on error goto Gesterr
AccèsBase = "Provider=Microsoft.Jet.OLEDB.4.0;Data " & _
"Source=" &
HttpContext.Current.Server.MapPath("dbMaBase.mdb")
exit function

gesterr:
select case err.number
case else
traitererreur()
end function


cette fonction est appelée au niveau d'une procédure "ouvrir dataset"
dans laquelle on trouve :

dim strConnection As String¬cèsBase()

Apparemment, Accès base ne trouve pas la base de donnée et l'instruction
précédente est itérée à l'infini, sans générer d'erreur dans la fonction
accès base ou du moins une erreur qui serait traitée par Gesterr (dans un
fichier de log) ....

Quelqu'un peut il m'aider à débroussailler ??

Merci d'avance de vos suggestions


Avatar
cpeltier
Bonsoir Patrice,

Merci de me répondre.
J'ai donc suivi la méthode proposée en écrivant ce qui suit ...
(en pompant honteusement la doc en fait sur ConnectToAccess ...)

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page
test()
End Sub

Sub test()
Dim strSubDir, MyPath, strPath As String
Dim rang As Integer
lblTime.Text = Now()
Session("Rang") = Rang
strPath = Me.MapPath(Me.TemplateSourceDirectory)
Session("PathAppli") = strPath
MyPath = AccèsBase()
lblPath.Text = MyPath
ConnectToAccess(MyPath)
End Sub

Public Sub ConnectToAccess(ByVal MyPath)
Dim conn As New System.Data.OleDb.OleDbConnection

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:clientsvolicante.asso.frwwwdbVolicanteWeb.mdb"
Try
conn.Open()
lblPathLog.Text = "connection à la base Ok"
Catch ex As Exception
lblPathLog.Text = "connection à la base impossible : " &
ex.Source & " - " & ex.ToString
Finally
conn.Close()
End Try
End Sub

et la réponse que j'obtiens en affichant ex.Source et ex.ToString :

connection à la base impossible : Microsoft JET Database Engine -
System.Data.OleDb.OleDbException: Trop d'utilisateurs actifs
at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
System.Data.OleDb.OleDbConnection.InitializeProvider() at
System.Data.OleDb.OleDbConnection.Open() at
Volicante._Default1.ConnectToAccess(Object MyPath) in D:GravureVisual
StudioAsp.netVolicanteDefault.aspx.vb:line 50

(pas de ldb avant lancement de la page)
ToujoursAussiPerplexementVotre

"Patrice" a écrit :

Que fait le traitement d'erreur ? (il tente de réessayer ? De préférence
try/catch).

Sinon je ferais une simple page qui m'affiche le chemin trouvé et qui teste
si le fichier est présent pour en avoir le coeur net. Le db ne me plait pas
trop non plus (risque de renvoyer un chemin différent selon le chemin de la
page courante).

--
Patrice

"cpeltier" a écrit dans le message de
news:
> Bonsoir à tous,
>
> Je suis confronté à un souci de déploiement sur le site de mon hébergeur.
>
> Avant toute explication, je précise que ce que j'ai déployé fonctionne sur
> mon serveur personnel sans aucun problème apparent ...
>
> Le comportement que j'observe sur le serveur distant est le suivant :
> départ en boucle sur le retour de fonction suivant :
>
> function AccèsBase () As String
> on error goto Gesterr
> AccèsBase = "Provider=Microsoft.Jet.OLEDB.4.0;Data " & _
> "Source=" &
> HttpContext.Current.Server.MapPath("dbMaBase.mdb")
> exit function
>
> gesterr:
> select case err.number
> case else
> traitererreur()
> end function
>
>
> cette fonction est appelée au niveau d'une procédure "ouvrir dataset"
> dans laquelle on trouve :
>
> dim strConnection As String¬cèsBase()
>
> Apparemment, Accès base ne trouve pas la base de donnée et l'instruction
> précédente est itérée à l'infini, sans générer d'erreur dans la fonction
> accès base ou du moins une erreur qui serait traitée par Gesterr (dans un
> fichier de log) ....
>
> Quelqu'un peut il m'aider à débroussailler ??
>
> Merci d'avance de vos suggestions





Avatar
Fred
Dans : news:,
cpeltier disait :
Bonsoir Patrice,




conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:clientsvolicante.asso.frwwwdbVolicanteWeb.mdb"



Une suggestion. Quels sont les droits d'accès sur le dossier «
d:clientsvolicante.asso.frwwwdb » du serveur ?

--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Avatar
Patrice
L'utilisation d'Access est explicitement supporté par l'hébergeur ? Je
n'utilise pas Access mais je vois souvent passer des problèmes de droits
pour les erreurs de ce genre.

Par exemple :
http://support.microsoft.com/default.aspx?scid=kb;en-us;299973

Bon courage

--
Patrice

"cpeltier" a écrit dans le message de
news:
Bonsoir Patrice,

Merci de me répondre.
J'ai donc suivi la méthode proposée en écrivant ce qui suit ...
(en pompant honteusement la doc en fait sur ConnectToAccess ...)

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page
test()
End Sub

Sub test()
Dim strSubDir, MyPath, strPath As String
Dim rang As Integer
lblTime.Text = Now()
Session("Rang") = Rang
strPath = Me.MapPath(Me.TemplateSourceDirectory)
Session("PathAppli") = strPath
MyPath = AccèsBase()
lblPath.Text = MyPath
ConnectToAccess(MyPath)
End Sub

Public Sub ConnectToAccess(ByVal MyPath)
Dim conn As New System.Data.OleDb.OleDbConnection

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=d:clientsvolicante.asso.frwwwdbVolicanteWeb.mdb"
Try
conn.Open()
lblPathLog.Text = "connection à la base Ok"
Catch ex As Exception
lblPathLog.Text = "connection à la base impossible : " &
ex.Source & " - " & ex.ToString
Finally
conn.Close()
End Try
End Sub

et la réponse que j'obtiens en affichant ex.Source et ex.ToString :

connection à la base impossible : Microsoft JET Database Engine -
System.Data.OleDb.OleDbException: Trop d'utilisateurs actifs
at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
System.Data.OleDb.OleDbConnection.InitializeProvider() at
System.Data.OleDb.OleDbConnection.Open() at
Volicante._Default1.ConnectToAccess(Object MyPath) in D:GravureVisual
StudioAsp.netVolicanteDefault.aspx.vb:line 50

(pas de ldb avant lancement de la page)
ToujoursAussiPerplexementVotre

"Patrice" a écrit :

> Que fait le traitement d'erreur ? (il tente de réessayer ? De préférence
> try/catch).
>
> Sinon je ferais une simple page qui m'affiche le chemin trouvé et qui


teste
> si le fichier est présent pour en avoir le coeur net. Le db ne me plait


pas
> trop non plus (risque de renvoyer un chemin différent selon le chemin de


la
> page courante).
>
> --
> Patrice
>
> "cpeltier" a écrit dans le message


de
> news:
> > Bonsoir à tous,
> >
> > Je suis confronté à un souci de déploiement sur le site de mon


hébergeur.
> >
> > Avant toute explication, je précise que ce que j'ai déployé fonctionne


sur
> > mon serveur personnel sans aucun problème apparent ...
> >
> > Le comportement que j'observe sur le serveur distant est le suivant :
> > départ en boucle sur le retour de fonction suivant :
> >
> > function AccèsBase () As String
> > on error goto Gesterr
> > AccèsBase = "Provider=Microsoft.Jet.OLEDB.4.0;Data " & _
> > "Source=" &
> > HttpContext.Current.Server.MapPath("dbMaBase.mdb")
> > exit function
> >
> > gesterr:
> > select case err.number
> > case else
> > traitererreur()
> > end function
> >
> >
> > cette fonction est appelée au niveau d'une procédure "ouvrir dataset"
> > dans laquelle on trouve :
> >
> > dim strConnection As String¬cèsBase()
> >
> > Apparemment, Accès base ne trouve pas la base de donnée et


l'instruction
> > précédente est itérée à l'infini, sans générer d'erreur dans la


fonction
> > accès base ou du moins une erreur qui serait traitée par Gesterr (dans


un
> > fichier de log) ....
> >
> > Quelqu'un peut il m'aider à débroussailler ??
> >
> > Merci d'avance de vos suggestions
>
>
>


Avatar
cpeltier
Fred, Patrice
Merci de vos réponses.
Question droits tout est OK, et l'hébergeur supporte bien access.
Mais car il y a un mais, je ne suis pas sur que le serveur soit configuré
pour OLEDB, mon hébergeur me parle plus tot de fichier global.asa avec AODB
....

Quelle est la configuration nécessaire pour OLEDB ?



"Patrice" a écrit :

L'utilisation d'Access est explicitement supporté par l'hébergeur ? Je
n'utilise pas Access mais je vois souvent passer des problèmes de droits
pour les erreurs de ce genre.

Par exemple :
http://support.microsoft.com/default.aspx?scid=kb;en-us;299973

Bon courage

--
Patrice

"cpeltier" a écrit dans le message de
news:
> Bonsoir Patrice,
>
> Merci de me répondre.
> J'ai donc suivi la méthode proposée en écrivant ce qui suit ...
> (en pompant honteusement la doc en fait sur ConnectToAccess ...)
>
> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles MyBase.Load
> 'Placez ici le code utilisateur pour initialiser la page
> test()
> End Sub
>
> Sub test()
> Dim strSubDir, MyPath, strPath As String
> Dim rang As Integer
> lblTime.Text = Now()
> Session("Rang") = Rang
> strPath = Me.MapPath(Me.TemplateSourceDirectory)
> Session("PathAppli") = strPath
> MyPath = AccèsBase()
> lblPath.Text = MyPath
> ConnectToAccess(MyPath)
> End Sub
>
> Public Sub ConnectToAccess(ByVal MyPath)
> Dim conn As New System.Data.OleDb.OleDbConnection
>
> conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
> Source=d:clientsvolicante.asso.frwwwdbVolicanteWeb.mdb"
> Try
> conn.Open()
> lblPathLog.Text = "connection à la base Ok"
> Catch ex As Exception
> lblPathLog.Text = "connection à la base impossible : " &
> ex.Source & " - " & ex.ToString
> Finally
> conn.Close()
> End Try
> End Sub
>
> et la réponse que j'obtiens en affichant ex.Source et ex.ToString :
>
> connection à la base impossible : Microsoft JET Database Engine -
> System.Data.OleDb.OleDbException: Trop d'utilisateurs actifs
> at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) at
> System.Data.OleDb.OleDbConnection.InitializeProvider() at
> System.Data.OleDb.OleDbConnection.Open() at
> Volicante._Default1.ConnectToAccess(Object MyPath) in D:GravureVisual
> StudioAsp.netVolicanteDefault.aspx.vb:line 50
>
> (pas de ldb avant lancement de la page)
> ToujoursAussiPerplexementVotre
>
> "Patrice" a écrit :
>
> > Que fait le traitement d'erreur ? (il tente de réessayer ? De préférence
> > try/catch).
> >
> > Sinon je ferais une simple page qui m'affiche le chemin trouvé et qui
teste
> > si le fichier est présent pour en avoir le coeur net. Le db ne me plait
pas
> > trop non plus (risque de renvoyer un chemin différent selon le chemin de
la
> > page courante).
> >
> > --
> > Patrice
> >
> > "cpeltier" a écrit dans le message
de
> > news:
> > > Bonsoir à tous,
> > >
> > > Je suis confronté à un souci de déploiement sur le site de mon
hébergeur.
> > >
> > > Avant toute explication, je précise que ce que j'ai déployé fonctionne
sur
> > > mon serveur personnel sans aucun problème apparent ...
> > >
> > > Le comportement que j'observe sur le serveur distant est le suivant :
> > > départ en boucle sur le retour de fonction suivant :
> > >
> > > function AccèsBase () As String
> > > on error goto Gesterr
> > > AccèsBase = "Provider=Microsoft.Jet.OLEDB.4.0;Data " & _
> > > "Source=" &
> > > HttpContext.Current.Server.MapPath("dbMaBase.mdb")
> > > exit function
> > >
> > > gesterr:
> > > select case err.number
> > > case else
> > > traitererreur()
> > > end function
> > >
> > >
> > > cette fonction est appelée au niveau d'une procédure "ouvrir dataset"
> > > dans laquelle on trouve :
> > >
> > > dim strConnection As String¬cèsBase()
> > >
> > > Apparemment, Accès base ne trouve pas la base de donnée et
l'instruction
> > > précédente est itérée à l'infini, sans générer d'erreur dans la
fonction
> > > accès base ou du moins une erreur qui serait traitée par Gesterr (dans
un
> > > fichier de log) ....
> > >
> > > Quelqu'un peut il m'aider à débroussailler ??
> > >
> > > Merci d'avance de vos suggestions
> >
> >
> >