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

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

11.01.2011, 13:50. Показов 2393. Ответов 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
4278 / 2970 / 693
Регистрация: 08.06.2007
Сообщений: 9,930
Записей в блоге: 5
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
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru