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

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

16.12.2007, 14:20. Показов 1898. Ответов 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
4274 / 2967 / 692
Регистрация: 08.06.2007
Сообщений: 9,917
Записей в блоге: 4
16.12.2007, 22:41
При использовании стандартного средства VB6 для изготовления инсталляции все нужные библиотеки включая DAO будут включены в инсталляционный комплект. Естественно для этого DAO нужно отметить в списке reference, а не создавать объект динамически. Туда же войдет среда бейсика и многое другое. При установке на другой машине все библиотеки будут установлены (переписаны в WindowsSystem, если их там не было) с проверкой версий, с предупреждениями и т. д., а ActiveX библиотеки зарегистрированы. При удалении установленного продукта все произойдет в обратном порядке с проверкой счетчиков и т. д. Если для изготовления инсталляции вы пользуетесь другими средствами, то там наверняка можно сделать что-то аналогичное.

Можно, конечно, написать самодельную инсталляционную программу, но зачем?
0
Elly
21.12.2007, 21:49
Скажите, говоря об стандартном средстве VB6 по созданию инсталляционного пакета, вы имеете ввиду Setup Application Wisard?
 Аватар для palva
4274 / 2967 / 692
Регистрация: 08.06.2007
Сообщений: 9,917
Записей в блоге: 4
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
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru