script création dsn automatique
-
dimanche 2 octobre 2011 19:19
Bonsoir à tous,
Mon problème est que je veux créer un script qui permet la création d'une source de données de façon automatique moyennant de l'authentification sql. j'ai utilisé ce code qui me permet de créer une dsn système en utilisant l'authentification windows (avec le login et le mot de passe de celui qui a qui a ouvert la session). j'ai bricolé un peu avec le code et j'ai voulu le faire fonctionné avec l'authentification sql mais quand je teste (panneau de configuration outils d'administration sources de données(ODBC)) je je trouve que la dsn est crée mais seulement l'id user est affiché le mot de passe ne l'est pas de telle façon que l'authentification échoue et on m'affiche erreur sql. j'ai fait des recherches infructueuses pour une solution. je serai très très reconnaissante si quelqu'un pourrait m'aider. voilà le code (j'ai ôter la partie du mot de passe puisqu'elle ne fonctionne pas). merci d'avance
On Error Resume Next
Dim RegObj
Dim SysEnv
Set RegObj = WScript.CreateObject("WScript.Shell")
'***** Specify the DSN parameters *****
DataSourceName = "nouvelledsn"
DatabaseName = "DATABASE"
Description = "la description de la source de données"
LastUser = "utilisateur"
Server = "SERVEUR"
'if you use SQL Server the driver name would be "SQL Server"
DriverName = "SQL Server"
'Set this to True if Windows Authentication is used
'else set to False or comment out
WindowsAuthentication = false
'point to DSN in registry
REG_KEY_PATH = "HKLM\SOFTWARE\ODBC\ODBC.INI\" & DataSourceName
' Open the DSN key and check for Server entry
lResult = RegObj.RegRead (REG_KEY_PATH & "\Server")
'if lResult is nothing, DSN does not exist; create it
if lResult = "" then
'get os version through WSCript Enviroment object
Set SysEnv = RegObj.Environment("SYSTEM")
OSVer = UCase(SysEnv("OS"))
'check which os is running so correct driver path can be set
Select Case OSVer
Case "WINDOWS_NT"
DrvrPath = "C:\WinNT\System32"
Case Else
DrvrPath = "C:\Windows\System"
End Select
'create entries in registry
RegObj.RegWrite REG_KEY_PATH & "\DataBase",DatabaseName,"REG_SZ"
RegObj.RegWrite REG_KEY_PATH & "\Description",Description,"REG_SZ"
RegObj.RegWrite REG_KEY_PATH & "\LastUser",LastUser,"REG_SZ"
RegObj.RegWrite REG_KEY_PATH & "\Server",Server,"REG_SZ"
RegObj.RegWrite REG_KEY_PATH & "\Driver",DrvrPath,"REG_SZ"
'if WindowsAuthentication set to True,
'a trusted connection entry is added to registry
'else, SQL Authentication is used.
if WindowsAuthentication = True then
RegObj.RegWrite REG_KEY_PATH & "\Trusted_Connection","true","REG_SZ"
else
RegObj.RegWrite REG_KEY_PATH,"REG_SZ"
end if
'point to data sources key
REG_KEY_PATH = "HKLM\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources\" &DataSourceName
'and add the name of the new dsn and the driver to use with it
RegObj.RegWrite REG_KEY_PATH,DriverName,"REG_SZ"
MsgBox DataSourceName & " DSN Created!"
else
MsgBox DataSourceName & " DSN already exists!"
end if
Set RegObj = Nothing
Set SysEnv = Nothing
- Déplacé Ciprian DuduialaOwner mardi 4 octobre 2011 07:46 (Origine :Visual Basic)
- Type modifié Ciprian DuduialaOwner lundi 31 octobre 2011 07:18 pas de solution
Toutes les réponses
-
lundi 3 octobre 2011 10:23
Bonjour,
C'est intéressant mais complexe
Hélas je n'ai pas d'idée mais je m'abonne au thread.
http://www.youtube.com/user/fredCSharper http://htmldocumentcreator.codeplex.com/ fred- Proposé comme réponse EhJoe vendredi 28 octobre 2011 11:20
- Non proposé comme réponse Ciprian DuduialaOwner lundi 31 octobre 2011 07:17
-
lundi 3 octobre 2011 11:41
Bonjour,
Votre code n'est pas du Vb.Net
Vous aurez plus de chance dans ce forum --> VB6Un modérateur (qui devrais passé sous peu) va faire le déplacement de votre message, ce n'est pas nécessaire d'en refaire un
Bonne continuation
Cordialement,
Xavier TALOUR
Alias Troxsa SendMail

- Proposé comme réponse EhJoe vendredi 28 octobre 2011 11:20
- Non proposé comme réponse Ciprian DuduialaOwner lundi 31 octobre 2011 07:17

