webForumDet fria alternativet

Kan inte connecta med DNS namn i Hostfilen men med ip nummer funkar

.NET

7 svar · 468 visningar · startad av mrblonde

Medlem sedan aug. 20012 349 inlägg
Frågan#1

Jag försöker att från VB connecta till en SQL Server 7.0.

Tanken var att använda en påhittad DNS som jag knyter till ipnummret i hostfilen.

Jag har testat koden med ipnummer och då funkar det. Byter jag ut det mot antingen Datornamnet på SQL servern eller min påhittade DNS (t ex sqlserver.domännamn.se, fast utan ä) så blir det connection timeout.

Det fungerar att tex nå servern via mitt påhittade DNS namn i andra applikationer. Jag börjar misstänka att ODBC drivrutinerna inte resolvar mot hostfilen.

Det är på "objConn.Open" som det går fel såklart.

'Dessa parametrar sätts på annan plats i programmet, bara här för tydlighet.
'strSQLProvider = "{SQL Server}"
'strSQLDatabaseServer = "Här sätter jag ip datornamn eller påhittad dns"

strConn = "Driver=" & strSQLProvider & ";" & _
			 "UID=" & strSQLUserID & ";" & _
			 "Pwd=" & strSQLPwd & ";" & _
			 "Database=" & strSQLDatabase & ";" & _
			 "Server=" & strSQLDatabaseServer
On Error Resume Next
Err.Clear
Set objConn = CreateObject("ADODB.Connection")
If (Err.Number <> 0) Then
	ReportEvent(RE_ERROR, "Could not Create ADODB.Connection Object")
	Quit
End If
Err.Clear
objConn.ConnectionString = strConn
objConn.Open
If (Err.Number <> 0) Then
	ReportEvent(RE_ERROR, "Could not connect to database.")
	ReportEvent(RE_WARNING, "Connectionstring = " & strConn)
	Quit
End If
Medlem sedan dec. 199917 055 inlägg
#2

Det skulle inte förvåna mig om ODBC använder sig av NBNS i första hand. Pröva att ändra filen lmhosts. istället. Det finns en sådan fil med namnet lmhosts.sam. Utgå från den och spara den därefter som "lmhosts."

Medlem sedan aug. 20012 349 inlägg
#3

En kopia i samma katalog med bara en punkt som ändelse alltså?
"lmhosts."

Ska testa.

Medlem sedan aug. 20012 349 inlägg
#4

Hmmmm, jag förstår inte riktigt syntaxen i lmhost filen... kan man skriva så här (tabbseparerat):

194.xx.xx.xx mymadeup.domain.se #PRE #Description

Medlem sedan dec. 199917 055 inlägg
#5

syntaxen bör nog snarare vara:
1.2.3.4 datornamn #PRE #Beskrivning

Hoppa över fullständigt domännamn. D.v.s. istället för
datorn.domanen.se så skriver du bara "datorn". Både i lmhosts-filen och i din kod.

Medlem sedan juni 20014 290 inlägg
#6

När man ändrar i lmhosts så "biter" inte ändringarna direkt, man måste antingen starta om eller ge kommandot "nbtstat -R"

Medlem sedan aug. 20012 349 inlägg
#7

om man nu vill ha domännamn allrahelst då....
kan man skriva så här då:

194.xx.xx.xx datornamn #PRE #DOM:mymadeup.domain.se #Description
Medlem sedan juni 20014 290 inlägg
#8

Nej, lmhost används till namnuppslagning i windows nätverk och där är #DOM lika med vilken (windows)domän datorn ligger i.

Skall du används "DNS" domäner så är det i hosts filen du skall lägga in det.

255 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)