Поговори хоть ты со мной, гитара семиструнная, к чему сидеть да горевать ведь ночь такая лунная ...
Здравствуйте, гость ( Вход | Регистрация )
Здесь был Инвандер, он шёл из бани и потирал надпись про зиму!
(21 March 2024 12:32:56) Воронина Настя
--
Персональный блог https://www.tumblr.com/seksvife интересные анонсы https://rss.app/embed/v1/carousel/_yFHWi0Oy87KAhcp0
(16 January 2024 00:47:23) Alisa
--
Работа в Сербии эскорт https://www.cupidon.agency/eskort-rabota-serbiya
(16 January 2024 00:46:43) Alisa
--
Работа для девушек в Сербии https://www.cupidon.agency/eskort-rabota-serbiya
(13 January 2024 18:23:05) Катя Орлова
--
дневник сексвайф https://www.tumblr.com/seksvife интересное в сообществах https://ru.tgchannels.org/channel/komsomolk...61&lang=all
|
||
|
VC6 & ODBC |
7.5.2007, 15:53
Сообщение
#1
|
|
Новичок Группа: Пользователи Сообщений: 76 Регистрация: 25.4.2007 Пользователь №: 470 |
На VC6 пишу прогу, которая использует базу из ODBC, но для работы программы, базу нужно добавлять в ODBC самому. Как можно сделать, чтобы программы сама заносила БД в ODBC?
-------------------- |
|
|
8.5.2007, 14:45
Сообщение
#2
|
|
Новичок Группа: Пользователи Сообщений: 9 Регистрация: 26.3.2007 Из: Пенза Пользователь №: 13 |
Вот для того, чтобы заносить в список DSN (или как там это правильно называется в ODBC...) читай MSDN это сделать как-то можно. Но сам понимаешь что произойдет, если на одном компе должны будут работать 2 проги с именем базы например "MyBase"
Вот я делал немного не так. Вместо имени твоей базы можно писать строку инициализации. Например для DBF: CODE BOOL cDBFDataBase::Connect( const char *i_db_path ) { char buff[ MAX_PATH ]; wsprintf( buff, "DSN=Visual FoxPro Tables;UID=;PWD=;SourceDB=%s;" "SourceType=DBF;Exclusive=No;BackgroundFetch=No;Collate=RUSSIAN;", i_db_path ); return cDataBase::Connect( buff ); } Для SQL Server что-то вроде этого: CODE BOOL cMSSQLDataBase::Connect(const char *i_server,const char *i_db_name,const char *i_uid,const char *i_pwd ) { char buff[ MAX_PATH ]; wsprintf( buff, "DRIVER=SQL Server;SERVER=%s;UID=%s;PWD=%s;DATABASE=%s;Trusted_Connection=No", i_server, i_uid, i_pwd, i_db_name ); return cDataBase::Connect( buff ); } И далее делалось уже подключение к базе (что то подобное, я так полагаю ты уже писал): CODE BOOL cDataBase::Connect( const char *i_connect_string )
{ SQLRETURN retcode; retcode = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &m_henv); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO) { /* Set the ODBC version environment attribute */ retcode = SQLSetEnvAttr(m_henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO) { /* Allocate connection handle */ retcode = SQLAllocHandle(SQL_HANDLE_DBC, m_henv, &m_hdbc); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO) { /* Set login timeout to 5 seconds. */ // SQLSetConnectAttr(m_hdbc, (void*)SQL_LOGIN_TIMEOUT, 5, 0); /* Connect to data source */ char buf[ 1024 ]; SQLSMALLINT buf_size; retcode = SQLDriverConnect( m_hdbc, GetDesktopWindow(), (SQLCHAR*) i_connect_string, SQL_NTS, (SQLCHAR*)buf, 1023, &buf_size, SQL_DRIVER_COMPLETE ); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO){ /* Allocate statement handle */ retcode = SQLAllocHandle(SQL_HANDLE_STMT, m_hdbc, &m_hstmt); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO) { m_connected = TRUE; return TRUE; } } else { ShowErrorBox(); } } } } return FALSE; } |
|
|
8.5.2007, 18:31
Сообщение
#3
|
|
Новичок Группа: Пользователи Сообщений: 76 Регистрация: 25.4.2007 Пользователь №: 470 |
Спасибо, пригодилось.
-------------------- |
|
|
20.6.2007, 14:13
Сообщение
#4
|
|
Новичок Группа: Пользователи Сообщений: 76 Регистрация: 25.4.2007 Пользователь №: 470 |
Создал форму, унаследованную от CRecordView. Создал пункт меню, чтобы вызывать эту форму. А вот как запустить эту форму при нажатии на пункт меню не знаю. Вызывал раньше только диалоговые окна. Писал так:
CODE CMyDialod dlg; dlg.DoModal(); А как вызвать CRecordView? P.S. SDI _________________________________________________________ Сделал вывод таблицы через CDialog, поэтому срочности и необходимости в вопросе нет, но если знаете, то напишите ответ . Сообщение отредактировал Ruttel - 20.6.2007, 16:36 -------------------- |
|
|
28.11.2018, 16:50
Сообщение
#5
|
|
Активный участник Группа: Пользователи Сообщений: 430 Регистрация: 27.11.2018 Пользователь №: 25,072 |
жесткий минет порно на столе http://fuguista.com/na-stole/
|
|
|
Текстовая версия | Сейчас: 28.3.2024, 12:26 |