[IIS] Access: Disk or network error.
J'ai développé pour un client une application ASP avec une base Access se trouvant dans le même répertoire que les pages web.
Ca marchait du tonerre à l'aide d'une chaine de connexion DSNless.
Puis j'ai réinstallé (j'étais et suis encore sous Vista Ultimate) et j'ai recopié le repertoire inetpub que j'avais avant. j'obtiens le message d'erreur suivant lors d'une tentative de connexion
Citation:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access Driver] Disk or network error.
/credium/connect.asp, line 19
Sauf que je sais d'où vient le problème. Lorsque IIS ouvre une base access, il crée une copie temporaire de la base dans un repertoire TEMP. Mais j'ai tout "corrigé" et j'ai encore et toujours ce problème.
j'ai:
- vérifier les variables d'environnement TMP et TEMP pour l'utilisateur courant et aussi les var système
- sur chaque repertoire, j'ai mis les droits 'full control' pour "tous les utilisateurs"
- idem sur le dossier contenant la base
bref, je suis dépassé et j'ai besoin que ca marche. quelqu'un aurait une idée?
ODBC Windows Vista/IIS7/Access 2007
Merci, Merci et Merci chers amis.
J'ai eu le même problème de "Erreur disque" ou bien "Connection Internet Interrompue", Je suis desssus depuis 2 jours en PHP pour serveur IIS 7 / Windows Vista / Access 2007. Grâce à vous j'ai fait marcher le serveur web.
Pour Access 2007, je copie ConnectionString ici pour partager ma modeste contribution:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
<?php
//
// create a connection with COM:
//
$cnn = new COM("ADODB.Connection");
//
// Access ACCDB OLE driver: ACCESS 2007.
// My Access Data Base is located in a PC at
// C:\tmp\web.accdb
//
$dsn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\tmp\\web.accdb;Persist Security Info=False";
//
//$dsn = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\\tmp\\web.accdb";
//
//
// open a connection: !!!ERROR!!! here:
//
$cnn->Open($dsn);
//
// do job here:
// ...
//
//
// close a connection:
//
$cnn->Close();
$cnn = null;
//
?> |
Et la procédure de Louis-Guillaume Morand que j'ai appliquée en Windows Vista version Française:
\Démarrer\Panneau de configuration\Système et maintenance
\Outils d'administration\Gestionnaire des services Internet (IIS)
...
\Default Web Site\Authentication\Authentification anonyme activé\Modifier
\Cocher Utilisateur Spécifique\[Définir]
\Choisir un compte utilisateur Windows Vista prédéfini + mot de passe.