powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как запихать модуль с функциями в DLL?
12 сообщений из 37, страница 2 из 2
Как запихать модуль с функциями в DLL?
    #32323435
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а никто из вас не подумал, что функции могут использоваться не только из Аксес?
не говоря уже о том, что АсХП нихрена не понимает в mde от 97 и наоборот.
а например delphi вообще не знает что такое mde.
про остальное промолчу.
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32323446
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Разумеется никто не подумал.
Телепаты в отпуске
Ты же сказал - использовать в аксесе. Теперь выясняется что использовать в дельфи.
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32323471
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да нифига не использовать в delphi.
это я к примеру, чтоб понятней.
короче dll универсальней.
и имхо работать должно быстрее.
(хотя не факт)
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32323481
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>что функции могут использоваться не только из Аксес?

Ага. Только тогда ссылку в своей dll на акес не забудь...


>и имхо работать должно быстрее.
>(хотя не факт)

Не факт. Где-то кто-то (ЛП? Нуф-нуф?) приводили замеры

==
Офф:
А где Нуф-Нуф?
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32323483
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нуф-нуфа съели?

Быстрее будет. Только в большинстве случаев ты этого даже не заметишь.
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32324948
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Драсте!

Занимался изысканиями в данном направлении, при этом была получена следующая информация:
1. DLL от VB - это не просто DLL, а ActiveX DLL, то есть основана на COM-механизме, что в общих чертах подразумевает более медленные вызовы, чем для обычной DLL и невозможность (или по крайней мере затрудненность) ее использования в других (каких точно не знаю) языках программирования;
2. Скорость VB-кода даже в "машинном" (не P-коде) лишь незначительно превышает скорость VBAшного Р-кода, да и то только в случаях выполнения последовательности операций, не связанных с вызовами функций сторонних библиотек.

Лично для себя во всей конители с "библиотечным" кодом я сделал следующие выводы:
1. MDE - использование кода намечается только в среде Аксеса (по соображениям меньшего гемора, т.к. VBA-шный код не всегда удается просто "Копи/Паст" в проект VB);
2. VB-DLL - использование кода намечается в VB и в среде Аксеса;
3. С++-DLL - во всех случаях, когда нужна высокая производительность каких-либо критических участков кода (среда использования значения не имеет).

На счет последнего пункта... Скорость C++ кода превышает скорость VB-кода в 300...500 раз! Сам очень долго удивлялся... И сейчас, столкнувшись с задачей, которую реализовать средствами VB/VBA невозможно по соображениям их низкой производительности, карпею над C++ :) Если не трогать тамошный интерфейс (формы... тьфу! "Диалоги" по ихнему:), где нужно всё рисовать ручками и самостоятельно реагировать на все сообщения, а еще знать на зубок кучу головоломательных библиотек, то всё не так уж и страшно! Во всяком случае мои первые (тестовые) DLL на С++ работают и просто убивают меня своей производительностью :)
Хотя, конечно, вместо C++ можно выбрать какой-нить дотнет, но это пока не для меня (по своим соображениям)

Это всё, что я имею сказать по данному поводу...

//времени ну оч. мало :( В форуме только "РиадОнли" и то через тему... Спасибо что не забыли :)
Нуф
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32324962
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да! Забыл еще сказать, что при создании VB-DLL придется таскать DLLку самого VB (примерно 1.5Мгб). Во всяком случае у меня без этой длл мои длл работать на "чистых" машинах отказывались... Может руки кривые :) //особенно на эту тему не заморачивался
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32325044
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нуф-нуф , а не пробовал тот же тестовый вариант (с++) переписать и откомпилить в dll на дельфях? Весьма интересно сравнить результаты!
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32325123
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел, нет, не пробовал... Ни инструмента соответствующего, ни знаний (Дельфи) - нет :( Да и производительность плюсов меня вполне устраивает (по сравнению с VBA:)

Хотя где-то в инете натыкался на сравнение производительности. Кажется самыми шустрыми там оказались Жаба, Плюсы и Дельфи //Могу ошибаться...
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32325139
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Нуф-нуф
Кто сегодня самый шустрый?
Если им верить то ты ошибаешься
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32325151
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VIG, нда... Жаба не высоко прыгает
...
Рейтинг: 0 / 0
Как запихать модуль с функциями в DLL?
    #32351070
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Драсте...
Поможите кто чем знает, плиз...

Пытаюсь разбираться с "плюсами" - в данный момент пытаюсь работать из С++ с БД через АДО. Исключительно для общего развития (в смысле не надо пинать ногами).

Выполнил маленький код, который собирает данные о памяти Процесса (API) и складывает их в табличку Аксес (ADO-рекордсет, через Рекордсет.AddNew...). В целом прога только и делает, что обращается то к API, то к ADO, т.е. в обоих случаях скорость выполнения функций API и ADO никак не зависит от используемой мной среды разработки, что частично демонстрируют следующие результаты времени выполнения одного и того же кода (естественно с соответстующими переделками под конкретный язык):
1,85 сек. - Access VBA (CurrentProject.Connection)
2,55 сек. - С++
2,55 сек. - VB (exe, "натуральный" код)
3,10 сек. - Access VBA (MyConnection).

Ну по поводу равенства в данном случае 2-го и 3-го результатов все понятно, а вот чего-то я никак не пойму по поводу первого и последнего!
Если при создании рекордсета использую Коннект Текущего проекта, то всё летает шустрее пресловутых плюсов! Но стоит тоьлко поставить Акс в ряд с VB или С++ (никаких тебе КуррентПроджект) и заставить работать через "самопальный" коннект, как тут же тормоза...

Сразу оговорюсь, что время создания коннекта вынесено за пределы "замеряемого" кода, т.е. создаю коннект, выкидываю мессэдж бокс, после "гашения" которого и начинается собственно "выполнение по секундомеру" :) Мэссэдж бокс "кликаю" только после того, как винт успокаивается (реакция на создание коннекта).

Вопрос: Подскажите пожалуйста, в чем разница между КуррентПроджектКоннекшен и между "самопальным" Коннекшеном? Вообще-то, как бы я подозреваю в чём разница, но почему добавляются ТАКИЕ тормоза?
Знания? Мысли? Источники знаний? Одним словом, если есть чего сказать по вышеизложенному, то буду очень признателен.

Заранее спасибо.
Нуф.
...
Рейтинг: 0 / 0
12 сообщений из 37, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как запихать модуль с функциями в DLL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]