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

Как сделать так что бы прога на VB + Access работала без установленного на компе бейсика и аксесса?

11.01.2011, 13:50. Показов 2356. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Интересный вопрос:
Как сделать так что бы прога на VB + Access работала без
установленного на компе бейсика и аксесса?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.01.2011, 13:50
Ответы с готовыми решениями:

Что нужно для того, чтобы прога работала на другом компе
Что нужно для того, чтобы прога работала на другом компе? Net framework compact?

Как сделать так, чтобы БД Access работала через интранет
У меня есть БД, которая каждый день импортирует .log файлы работы серверов. Она обрабатывает эти файлы, сортирует и т.д. Основная ее цель -...

Как сделать так, чтобы программа работала без массива?
var f:text; a,i,n:integer; ars:array of string; begin; assign(f,'C:\Users\oleg\Desktop\хлам\для сдачи ноут\7 лаба\о.txt'); ...

17
Comanche
11.01.2011, 14:43
Без бэйсика могут работать все бэйсиковские программы - просто в дистрибутив надо включить все ссылки (Tools/References и Tools/Components) из проекта, не забыв, конечно же, про MSVBVM60.DLL. Инсталлятор должен регистрировать все эти DLL и OCX при установке на комп пользователя. Кроме того, проект может использовать массу других файлов, не требующих регистрации через REGSVR32.EXE, - например, 'type libraries' (обычно - TLB, OLB), 'обычные' (Win32Native) DLL-ки, и т.д. Всё зависит от проекта.

Без Аксесса тоже можно работать. Самый простой способ - это включить в дистрибутив MDAC (можно взять с сайта Microsoft). А некоторые умельцы - чтоб не тащить этот огроменный пакет - как-то выдёргивают из него ОТДЕЛЬНО взятые библиотеки: ADO или DAO - смотря как именно VB-прога обращается к данным Аксесса. Правда, точного (гарантированного) рецепта, как 'выдрать' из MDAC'а только DAO-составляющие, я так ни разу и не увидел. Лучше - MDAC целиком; по кр. мере сам Microsoft так советует, на страницах MSDN.

Кстати, если компе стоит MS Office 2000 или работающая '1С' 7.х, то MDAC на нём уже есть. Впрочем, инсталлятор MDAC'а - 'умный', и сам знает, когда ему ставиться, а когда - нет.

Если же комп - 'чистый' Win9x/Me, то MDAC надо ставить одним из двух способов:
1. Поставить версию 2.1, а потом - сразу 2.6 или 2.7 или... какая там сейчас последняя - не помню.
2. Поставить последнюю версию сразу, и затем обязательно доустановить MS Jet.

Это связано с тем, что пакет MDAC версий начиная с 2.6 (включительно) не включает в себя провайдера Jet.OLEDB; и если к этому 'не подготовиться', то VB-шная прога, написанная с использованием MS ADO, будет ругаться на 'неизвестного провайдера'.
0 / 0 / 0
Регистрация: 10.01.2011
Сообщений: 50
12.01.2011, 06:23  [ТС]
Спасибо ! А где найти этот MDAC конкретнее, плз.
0
Ferd
12.01.2011, 08:56
MDAC 2.8
http://download.microsoft.com/download/c/f/2/cf2b5cd9-7ffd-4c19-971f-9ccaf0b57d48/MDAC_TYP.EXE
Widowmaker
12.01.2011, 09:09
гы !! значит я уже спец, раз научился dao без ацесса и mdaca ставить ... приятно
в общем так:
для работы дао на пустой машине нужен всего лиш один файл dao360.dll
находится в C:Program FilesCommon FilesMicrosoft SharedDAO
туда же его нужно и положить при инсталяции своей проги
теперь еще нужно в реестр пару записей сделать:

REGEDIT4

[HKEY_LOCAL_MACHINESoftwareCLASSESCLSID{0 0000100-0000-0010-8000-00AA006D2EA4}]
@='DAO.DBEngine.36'

[HKEY_LOCAL_MACHINESoftwareCLASSESCLSID{0 0000100-0000-0010-8000-00AA006D2EA4}ProgID]
@='DAO.DBEngine.36'

[HKEY_LOCAL_MACHINESoftwareCLASSESCLSID{0 0000100-0000-0010-8000-00AA006D2EA4}InprocServer32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'
'ThreadingModel'='Apartment'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}]

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0]
@='Microsoft DAO 3.6 Object Library'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0FLAGS]
@='0'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0*]

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0*win32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}]

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0]
@='Microsoft DAO 3.6 Object Library'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0FLAGS]
@='0'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0*]

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0*win32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'

[HKEY_CLASSES_ROOTTypeLib{00025E01-0000-0000-C000-000000000046}5.0HELPDIR]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\ '

[HKEY_CLASSES_ROOTCLSID{00000103-0000-0010-8000-00AA006D2EA4}]
@='DAO.TableDef.36'

[HKEY_CLASSES_ROOTCLSID{00000103-0000-0010-8000-00AA006D2EA4}ProgID]
@='DAO.TableDef.36'

[HKEY_CLASSES_ROOTCLSID{00000103-0000-0010-8000-00AA006D2EA4}InprocServer32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'
'ThreadingModel'='Apartment'

[HKEY_CLASSES_ROOTCLSID{00000104-0000-0010-8000-00AA006D2EA4}]
@='DAO.Field.36'

[HKEY_CLASSES_ROOTCLSID{00000104-0000-0010-8000-00AA006D2EA4}ProgID]
@='DAO.Field.36'

[HKEY_CLASSES_ROOTCLSID{00000104-0000-0010-8000-00AA006D2EA4}InprocServer32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'
'ThreadingModel'='Apartment'

[HKEY_CLASSES_ROOTCLSID{00000105-0000-0010-8000-00AA006D2EA4}]
@='DAO.Index.36'

[HKEY_CLASSES_ROOTCLSID{00000105-0000-0010-8000-00AA006D2EA4}ProgID]
@='DAO.Index.36'

[HKEY_CLASSES_ROOTCLSID{00000105-0000-0010-8000-00AA006D2EA4}InprocServer32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'
'ThreadingModel'='Apartment'

[HKEY_CLASSES_ROOTCLSID{00000106-0000-0010-8000-00AA006D2EA4}]
@='DAO.Group.36'

[HKEY_CLASSES_ROOTCLSID{00000106-0000-0010-8000-00AA006D2EA4}ProgID]
@='DAO.Group.36'

[HKEY_CLASSES_ROOTCLSID{00000106-0000-0010-8000-00AA006D2EA4}InprocServer32]
@='C:\PROGRAM FILES\COMMON FILES\MICROSOFT SHARED\DAO\DAO360.DLL'
&qu
 Аватар для palva
4276 / 2969 / 692
Регистрация: 08.06.2007
Сообщений: 9,922
Записей в блоге: 4
12.01.2011, 09:44
А интересно, можно ли эти записи в реестре сделать запуском Regsvr32 на библиотеку Dao360.dll?
0
0 / 0 / 0
Регистрация: 04.03.2008
Сообщений: 250
12.01.2011, 10:35
Сколько времени работаю с библиотеками доступа к данным, а ни разу не приходилось лазить в реестр. regsvr32 вообще все, что угодно, сам регистрирует. Более того, если подцепить нужные библиотеки к дистрибутиву, они автоматом инсталлируются и регистрируются. Так что, как мне кажется, все гораздо проще, если не нужны выкрутасы наподобие уменьшения размера дистрибутива. Да, кстати, много читал на форуме о том, что P&D Wizard глючит, сбоит и прочее. А я только им пользуюсь для создания дистрибутивов, и ни разу глюка не видел. Что я делаю не так? ))
0
Comanche
12.01.2011, 10:49
2Widowmaker: вполне м.б., что всё действительно так просто с DAO; я в большей степени имел в виду именно ADO.

2palva: :-))

2igor_c: а ты попробуй выдрать КОРРЕКТНО из MDAC'а связанные с ADO и Jet.OLEDB файлы и зарегистрировать их на АБСОЛЮТНО ПУСТОЙ ( ! ) Win9x-машине; будет у тебя потом работать прога, использующая ADO?!
0 / 0 / 0
Регистрация: 04.03.2008
Сообщений: 250
12.01.2011, 10:56
Скорее всего, с первого раза не заработает. Так ведь и я о том же. Если стандартный способ действует, зачем выдирать что-то из пакета, особенно тому, кто только приступает к работе с базами данных.
0
0 / 0 / 0
Регистрация: 04.03.2008
Сообщений: 250
12.01.2011, 10:59
Да, кстати, Comanche, если тебе показалось, что я критикую твой вариант, или ститаю тебя некомпетентным в этом вопросе, то ничего подобного. Вовсе даже наоборот.
0
Comanche
12.01.2011, 12:04
2igor_c:

1. 'Особенно тому, кто только приступает к работе с базами данных' я настоятельно посоветую прилагать к дистрибутиву весь MDAC целиком и не париться. В конце концов, Майкрософт так рекомендует ) Пусть размер большой, зато вариант беспроигрышный.

2. Во-первых, мне это не показалось ) Во-вторых, я не стану переживать по поводу критики в форумах - иной раз могу такую чушь тут ляпнуть, что грех не покритиковать ;-) В-третьих, здесь слава богу не форум VBNET.RU, где подростки наезжают друг на друга просто 'из любви к искусству' и постоянно 'гнут пальцы', кто круче )) Чем мне нравится RELIB - здесь СПОКОЙНЫЙ обмен мнениями, с ХОРОШЕЙ долей здоровой критики, и почти нет сообщений на тему 'Как написать бота для шахмат' :-))))
0 / 0 / 0
Регистрация: 04.03.2008
Сообщений: 250
12.01.2011, 12:22
Читал невнимательно, извиняюсь. Я, кстати, уже столкнулся с проблемами неподдержки DAO в новом mdac. Нужно было данные из mdb перекачать в SQL Server. Пришлось подключать обе библиотеки к проекту.
0
0 / 0 / 0
Регистрация: 10.01.2011
Сообщений: 50
12.01.2011, 14:18  [ТС]
Только не смейтесь!
Запустила я этот МДАК а что дальше? Как он работает?
0
Comanche
12.01.2011, 15:06
Он просто устанавливается - и всё.
'MDAC' = 'Microsoft Data Access Components' = 'Компоненты доступа к данным Майкрософт'.
Т.е. скачанный тобой EXE-шник просто устанавливает и регистрирует эти компоненты.
Ferd
12.01.2011, 16:14
Не просто работает, а библиотеку в ссылках надо подключать при работе с БД. Соответственно открываются невероятные возможности последней версии.
Сумрак
16.01.2011, 17:52
Доброго времени суток
Comanche прав... если работаешь с VB и Аccess надо ставить все что требуется. А все что требуется можно глянуть в ссылках.(рунтаймы само собой)
0 / 0 / 0
Регистрация: 10.01.2011
Сообщений: 50
17.01.2011, 06:21  [ТС]
А где найти МДАК более ранних версий?
0
Comanche
17.01.2011, 12:10
Ты лучше ставь последний, который есть, а отсутствующий в нём MS Jet доустанавливай отдельно. Где его взять - см. ссылку:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;271908
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.01.2011, 12:10
Помогаю со студенческими работами здесь

Как сделать так, что бы работала встроеная и дискретная видеокарта одновременно?
Как сделать так, что бы работала встроеная видеокарта и видеокарте, мне надо что бы работали видео выходи на материнской плате и выходы на...

Как сделать так что бы драйвер не выгружался и клава работала всегда и сразу?
Здравствуйте товарищи. Помогите мне пожалуйста разобраться в следующей проблеме моей клавиатуры Gigabyte Aivia Osmium. Включаю компьютер,...

запускать без установленного на компе акцессе
Возможно ли сделать, таким образом чтобы Базу Можно было бы запускать без установленного на компе акцессе.??? Уже созданную базу данных...

код с++. где что поставить что бы прога норм работала?
#include <iostream> #include <string> int main(int argc, char* argv) { struct { const char chr; ...

Как можно сделать так чтоб программа работала быстрее?
Как можно сделать так чтоб программа работала быстрее?Думаю сделать через seek, чтобы при проверке файла программа проверяла ту позицию, из...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
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
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru