Что нового

Запуск приложения не всегда срабатывает

McLotos

Новичок
Сообщения
20
Репутация
0
Добрый день. Интересная ситуация, не могу разобраться, может не вижу, посмотрите свежим взглядом =)
Есть код
Код:
;Проверяем запускалось ли ранее это приложение
If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\McLotos\Storage", "Application") = True Then
;Если да то проверяем ставил ли пользователь галочки Сохранять пароль и Запускать автоматически
	$rlogin = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\McLotos\Storage","Username")
	$rPassw = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\McLotos\Storage","Password")
	$rServer = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\McLotos\Storage","Server")
	Dim $sDBServerIP = $rServer
	Dim $sDBUsername = "root"
	Dim $sDBPassword = ""
	Dim $sDatabase   = "sklad"
MsgBox(0,'ТЕСТ',$sDBServerIP)
Global $MySQLConn = ObjCreate("ADODB.Connection")
$MySQLConn.Open("DRIVER={MySQL ODBC 5.2a Driver};SERVER=" & $sDBServerIP & ";DATABASE=" & $sDatabase & ";UID=" & $sDBUsername & ";PWD=" & $sDBPassword & ";PORT=3306")
	If $rlogin = True And $rPassw = True Then
$query = "SELECT `access` FROM `users` WHERE `login`='"&$rLogin&"' AND `passw`='"&$rPassw&"'"
Dim $oGetRecords = $MySQLConn.Execute($query)
$Form = $oGetRecords.Fields(0).Value
$MySQLConn.Close
		_SelectForm($Form) ;Если все условия true тогда не запускаем форму авторизации, а сразу выводим основную форму
	Else
		_authForm() ;Если в реестре есть ключ с адресом сервера но нет данных для авторизации
	EndIf
Else
	_Reg();Если в реестре нет вообще никакой информации о приложении то запросить у пользователя адрес сервера и зарегистрировать всё в реестре
EndIf
Это блок, с которым как раз проблемы, если $sDBServerIP ставить вручную(в коде) тогда никаких проблем не возникает, но если сделать так как здесь, то приложение отказывается запускать какую-либо форму, т.е. приложение запускается, выводит мне тестовый MsgBox с адресом сервера и закрывается
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
А если попробовать как-то так ?
Код:
...
	$rServer = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\McLotos\Storage","Server")
	If Not IsString($rServer) Then
		$rServer = String($rServer)
	EndIf
	Dim $sDBServerIP = $rServer
...
 
Автор
McLotos

McLotos

Новичок
Сообщения
20
Репутация
0
Не получилось. Всё-равно не запускается
 

---Zak---

Скриптер
Сообщения
455
Репутация
120
2 McLotos
Гадать можно долго...
Код:
$MySQLConn.Open("DRIVER={MySQL ODBC 5.2a Driver};SERVER='" & $sDBServerIP & "';DATABASE=" & $sDatabase & ";UID=" & $sDBUsername & ";PWD=" & $sDBPassword & ";PORT=3306")


Код:
$MySQLConn.Open("DRIVER={MySQL ODBC 5.2a Driver};SERVER={" & $sDBServerIP & "};DATABASE=" & $sDatabase & ";UID=" & $sDBUsername & ";PWD=" & $sDBPassword & ";PORT=3306")


PS: если не секрет какое значение выводит $sDBServerIP, там IP адрес или имя ПК ?
 
Верх