Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Михаил

Как обойтись без Setup при работе с базой Access

16.12.2007, 14:20. Показов 1918. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня такая проблема: написал прогу, которая использует MS Access, но оказалось, что при её работе крайне не желательно ничего устанавливать на клиентскую машину. То есть просто вставили компакт диск - поюзали - выключили и забыли, причём компы клиентские скорее всего будут со старыми OS, типа 95 и 98 со стандартными установками. Подскажите, какую модель доступа к базе MS Access 98 использовать и какой драйвер, чтоб это работало на любой машине, позволяется всё, что нужно тащить с собой на диске, и запускать всё, что угодно на время работы программы.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.12.2007, 14:20
Ответы с готовыми решениями:

Ошибка при работе с базой MS access 97
Добрый день. Может быть кто-то сталкивался со следующей проблемой. У меня база MSACCESS 97. Система WINDOWS XP. При корректировке формы...

Inno setup и приложения с базой данных Access
Есть прога с базой данных Access. Кладу в установщик файлы из папки релиз. После установки появляется ярлык с программой, но при запуске...

PHP как обойтись без капчи при регистрации
Хочу сделать проверку на сайт при регистрации , но без капчи. как это осуществить, суть такова. Я делаю одно из полей заполнения невидимым...

18
Ghost
16.12.2007, 15:23
Что значит - прога, которая использует MS Access??????
Михаил
16.12.2007, 15:30
Я пишу программу на VB(в принципе уже почти дописал), которая должна обрабатывать и выводить на экран данные, хранящиеся в базе MS Access(хотя в принципе не поздно перейти и на другую базу, если это мне поможет в решении проблемы и не замедлит обработки). Но я не знаю, как запустить программу с компакт диска, не устанавливая дополнительных библиотек, нужно какое то решение, которое позволит запускать мою программу без предварительной установки драйверов на любой машине.
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
16.12.2007, 16:13
Это братец ты очень хитер ;-)). Хочешь юзать реляционную базу данных, а о провайдерах доступа к ней дела тебе нет. Тогда путь у тебя только один пиши все в бинарные или текстовые файлы для этого ничего тебе не потребуется. Удачи.
Для Access надо как минимум иметь DAO на клиентской машине.
0
Михаил
16.12.2007, 16:22
Я же не говорил, что мне нужно обеспечить работу на 'голой' железке, наверняка есть провайдеры, которые ставятся вместе с системой, 95 или 98, ведь JET для виндов как родные. Может есть механизм, встроенный в VB, всё равно приходится тащить всякие msvb...dll за собой, я спрашиваю именно про это.

Подскажите, кто знает.
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
16.12.2007, 16:29
DAO для Windows не родной - он родной для MS Office, так что ставить его все равно надо или проверять на наличие.
0
0 / 1 / 3
Регистрация: 27.03.2012
16.12.2007, 16:32
Мне кажется, что тебе надо в начале программы пытаться создать какой-либо объект, который ты используешь для работы с БД (кстати, что - DAO, ADO?...) и если при этом система вернет сообщение об ошибке 'Can't create an object' то тебе надо показывать свое сообщение 'Плиз, поставьте DAO/ADO'... Конечно, какую-то инсталляцию для этого все равно придется делать, причем тут PDW не поможет, а придется мастерить что-то самому, что позволит скопировать с CD нужные библиотеки и зарегистрировать их.
0
0 / 1 / 3
Регистрация: 27.03.2012
16.12.2007, 16:36
Кстати, если будешь пользоваться ADO, то с сайта Microsoft можно скачать полную установку всех компонентов для работы с БД (наверное, DAO тоже туда входит), закатать ее на CD и в случае ошибки, которую я выше описал, запускать инсталляху. Называется этот пакет MDAC и скачать его можно здесь:

http://www.microsoft.com/data/download_260rtm.htm
0
Ghost
16.12.2007, 17:01
Согласен со smalig - можно юзать ADO, тем более, что пакет установки ADO можно скачать с МС-а, но есть ли из ADO доступ к mdb файлам?
Если есть - то полный вперед, хотя DAO будет работать шустрее
1 / 1 / 0
Регистрация: 09.10.2007
Сообщений: 596
16.12.2007, 17:09
Есть кoнечнo...
0
0 / 0 / 0
Регистрация: 18.11.2007
Сообщений: 190
16.12.2007, 17:53
А вот MDAC 2.6 я бы и не рекомендовал для доступа к Аксесу 98. Вполне достаточно и 2.1. (кстати - этот MDAC - как раз ADO)
Без компонента работать точно не будет.
А вот недавно получил от юзера такой фидбак - он отказался при инсталляции программы от регистрации допюконтролов - соответственно программа не работала. Тогда он все OCX-файлы свалил в одну директорию и все заработало.
Моральсей басни такова - то ли он незаметно для себя это все-таки зарегистрировал, то ли можно кинуть это в ту же директорию.
НО!!! Тогда никакого раннего связывания и придется пользоваться функциями CreareObject и GetObject. На локальной задаче не должно быть проблем с early/late binding.
Сам написал и порадовался- надо попробовать - теоретически работать должно по Микрософтовской логике. Сложнее выделить необходимые для инсталляции ДатаАксесс Компонент файлы.
0
0 / 0 / 0
Регистрация: 18.11.2007
Сообщений: 190
16.12.2007, 17:59
А вот MDAC 2.6 я бы и не рекомендовал для доступа к Аксесу 98. Вполне достаточно и 2.1. (кстати - этот MDAC - как раз ADO)
Без компонента работать точно не будет.
А вот недавно получил от юзера такой фидбак - он отказался при инсталляции программы от регистрации допюконтролов - соответственно программа не работала. Тогда он все OCX-файлы свалил в одну директорию и все заработало.
Моральсей басни такова - то ли он незаметно для себя это все-таки зарегистрировал, то ли можно кинуть это в ту же директорию.
НО!!! Тогда никакого раннего связывания и придется пользоваться функциями CreareObject и GetObject. На локальной задаче не должно быть проблем с early/late binding.
Сам написал и порадовался- надо попробовать - теоретически работать должно по Микрософтовской логике. Сложнее выделить необходимые для инсталляции ДатаАксесс Компонент файлы.
0
Михаил
16.12.2007, 18:43
Я использовал вначале DAO, потом когда искал обходные решения перешёл на ADO, для проги - это разница, по большому счёту только в ConnectionString и подключаемой библиотеке, для моих задач разницы никакой.

Спасибо за интересные предложения, наверное буду ловить ошибку при создании объекта и при необходимости запускать инсталятор.

Но если ещё будут мысли и идеи - напишите, пожалуйста, наверняка понадобятся кому-то ещё в форуме.
1 / 1 / 0
Регистрация: 09.10.2007
Сообщений: 596
16.12.2007, 18:51
Мoжнo сaмoму при зaпуске регистрирoвaть все dll, a пoтoм oтрегистрить
0
Михаил
16.12.2007, 18:56
А не будет путаницы в реестре, если у пользователя уже стоят библиотеки с такими именами, да ещё я буду постоянно регистрить и разрегистрировать свои библиотеки?
И удаляется ли запись о библиотеке из реестра или там будет плодиться куча мусора?
Если это будет без последствий для последующей работы на том компе, то это решение кажется более изящным и универсальным.
1 / 1 / 0
Регистрация: 09.10.2007
Сообщений: 596
16.12.2007, 19:12
Нaскoлькo я пoнимaю этo и прaвдa мoжет быть oпaснo, т.к. если библиoтекa уже былa дo тoгo, тo мы её прoстo сделaет невидимoй при рaзрегистрaции.

Все, чтo прихoдит в гoлoву - прoверить нaличие типoв (Тем же CreateObject() ) - если нет - прoписaть с CD или скoпирoвaть в лoкaльную пaпку и oттудa прoписaть. Ну при выхoде в oбрaтнoм пoрядке.

Регистрaцию библиoтеки я предстaвляю себе смутненькo. Легче тaкoе делo реaлизoвaть нa VC++ i пoдключить к VB.

Динaмически пoдсoединить нужную Dll и вызвaть у неё DllRegisterServer VB врoде не смoгет.

Мoжнo нaписaть мaленькую VB прoгу, пoлoжить её в кaтaлoг сo всеми Dll. И в ней прoписaть импoрт DllRegisterServer.
0
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
16.12.2007, 22:41
При использовании стандартного средства VB6 для изготовления инсталляции все нужные библиотеки включая DAO будут включены в инсталляционный комплект. Естественно для этого DAO нужно отметить в списке reference, а не создавать объект динамически. Туда же войдет среда бейсика и многое другое. При установке на другой машине все библиотеки будут установлены (переписаны в WindowsSystem, если их там не было) с проверкой версий, с предупреждениями и т. д., а ActiveX библиотеки зарегистрированы. При удалении установленного продукта все произойдет в обратном порядке с проверкой счетчиков и т. д. Если для изготовления инсталляции вы пользуетесь другими средствами, то там наверняка можно сделать что-то аналогичное.

Можно, конечно, написать самодельную инсталляционную программу, но зачем?
0
Elly
21.12.2007, 21:49
Скажите, говоря об стандартном средстве VB6 по созданию инсталляционного пакета, вы имеете ввиду Setup Application Wisard?
 Аватар для palva
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
21.12.2007, 22:13
Не знаю как это называется. Компилировал exe-файл проекта, затем: Главное меню - Add-Ins - Add-In Manager - там отмечал Package and Deployment Wizard, ставил галку в 'Loaded/Unloaded' и нажимал OK. После чего в меню Add-Ins появлялвя соответствующий пункт.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.12.2007, 22:13
Помогаю со студенческими работами здесь

Как обойтись без темп файла при парсинге ?
Добрый день всем! Для парсинга одного сайта написал скрипт: $url = 'https:какой-то сайт/' $file = New-TemporaryFile ...

Как при восстановлении hdd можно обойтись без комплекса pc-3000?
Сам понемногу занимаюсь ремонтом пк в глубинке. Есть несколько дохлых hdd (bad Сектора, Некоторые Просто не Определяются и т.д). На...

Сбой в работе с базой Access 2003
Доброе время суток! При попытке любого действия с базой (внесение данных, фото или изменением данных) выдает следующее "Невозможно...

Можно ли в 1С 8.2 обойтись без мастеров, при конфигурировании?
Пишу довольно сносно в 1с 7.7, решил в 8.2 поразбираться, скачал самоучитель (Радченко автор) так он все при помощи мастеров там стряпает,...

Безопасность при работе с базой
Добрый день. Использую Spting + Hibernate Есть баз MySql куда пользователи могут добавлять/удалять данные после того как залогинятся....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru