powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
25 сообщений из 77, страница 3 из 4
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011585
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovimho.
Когда человек перестаёт мыслить образами - атрофируется важная часть мозговой активности.
"Видеодокументирование" не требует образного мышления - чистой воды "делай так".
Вы путаете это с инструкцией делай так. Для меня это скорее как презентация на конференции для разработчиков. Вы когда на конференции слушаете докладчика по той же Firebird воспринимаете это тоже как чистой воды делай так? Я это воспринимаю ка экскурс о том что и где искать в сжатом виде. Например, последняя конференция по Delphi XE8 съэкономила мне кучу времени по разбору всего нового что есть в продукте и позволила уже на следующий день начать что то делать используя эти возможности минуя этап их поиска. Опять же что бы искать или разбирать надо знать что это есть и где искать. Гугл тут не всегда помошник. У delphi хоть справка есть , тут её заменяет код, дак почему ко всему этому не сделать оглавление? А если нет время писать так хоть видео с рассказом записать.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011592
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 16:49:01:

Mikhail Tchervonenko> Например, последняя конференция по Delphi XE8 съэкономила мне кучу времени по разбору всего нового
> что есть в продукте и позволила уже на следующий день начать что то делать используя эти возможности
> минуя этап их поиска.а шо, whats new уже не пишут?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011601
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mikhail Tchervonenko,

ты не путай презентацию с видео уроком. Видео запись презентации это одно дело. Но там тоже слайды со схемками готовятся
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011603
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийHello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 16:49:01:

Mikhail Tchervonenko> Например, последняя конференция по Delphi XE8 съэкономила мне кучу времени по разбору всего нового
> что есть в продукте и позволила уже на следующий день начать что то делать используя эти возможности
> минуя этап их поиска.а шо, whats new уже не пишут?


пишут, но кое что не мешает ещё продемонстрировать как и в каких случаях применять.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011641
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисMikhail Tchervonenko,

ты не путай презентацию с видео уроком. Видео запись презентации это одно дело. Но там тоже слайды со схемками готовятся
Ну понятно что совсем без подготовки не получится, нужен план, что то можно заранее нарисовать. Хотя, вспоминая одного нашего препода, который на проекторе рисовал на плёнке, кто мешает использовать планшет и рисовать схемы по ходу обсуждения. Короче, если суммированть все что тут говорилось, можно это назвать видео лекциями.

Может лучше обсудим - какие темы стоит затронуть?

вот на вскидку:
1. Структура проектов Firebird (дерево папок, что где искать итп)
2. Краткое описание модулей (внутренних и внешних) и их алгоритма работы (что и как делает, где лежит и что требует),
..........
3. Подготовка проекта к компиляции и компиляция (в принципе есть в текстовиках но коротко пройтись не мешало бы потому как вопросы всеравно возникают и думаю у разработычиков уже есть в голове о чем ещё рассказать тут)
4. Соглашения по именованию переменных, классов итп и написанию кода
5. Структура классов, предназначение и местонахождение (тут конечно блок схема не помешала бы)
6. Основные интерфейсы
7. Организация очереди комманд
8. Работа с кэшем и памятью
......
итп
дополнительно можно было бы рассказать о том как организуется разработка, об иерархии в комманде, кто проверяет, тестирует, кто разрешает итп дабы 1000 раз не канали в форумах разработчиков одними и теми же вопросами

если составить разумный план то рассказать будет значительно легче. Понятно что писалось все не одним человеком, можно было бы разделить кому что рассказать. И лучше самих разработчиков такой план никто не напишет.

повторюсь ещё раз, речь об общей-обзорной информации, какие методы и свойства имеют классы можно посмотреть самому, но вот что такой класс или интерфейс существует и для чего он было бы полезно коротко сказать. Это бы дало основу на которой можно было бы значительно быстрее разобраться в проекте и стать полезным.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011645
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:03:52:

Mikhail Tchervonenko> Может лучше обсудим - какие темы стоит затронуть?
Может лучше обсудим - кто это будет делать?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011649
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийHello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:03:52:

Mikhail Tchervonenko> Может лучше обсудим - какие темы стоит затронуть?
Может лучше обсудим - кто это будет делать?

кроме разработчиков это никто не сможет сделать мне сдаётся,
можно обсудить кто после такого обзора будет разбираться и документировать подробно
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011651
dimitr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
больше половины материала в принципе есть, в виде слайдов и аудиозаписи. Но оно еще не выкладывалось в публичный доступ.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011653
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, обзор архитектуры проекта с т.з. кода - дело доброе и зело полезное, только вот нужное разве что разработчикам, а их ряды вроде как уже который год постоянны. А трудозатраты на создание подобного описания - ого-го.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011654
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Fr0st-brutal!
You wrote on 20 июля 2015 г. 18:11:16:

Fr0st-brutal> Ну, обзор архитектуры проекта с т.з. кода - дело доброе и зело полезное,
> только вот нужное разве что разработчикам, а их ряды вроде как уже который год постоянны.
> А трудозатраты на создание подобного описания - ого-го.
Миша обещает "быструю окупаемость".
А рублик трудовой зажал...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011656
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitrбольше половины материала в принципе есть, в виде слайдов и аудиозаписи. Но оно еще не выкладывалось в публичный доступ.
вот и я подозреваю что такой проект не мог просто в головах оставаться, разработчикам наверняка надо было общаться, обсуждать, прикидывать, схемы рисовать алгоритмы итп
может слегка причесать-систематизировать, собрать все в один архив и если уж не в публичный доступ то хоть по запросу давать почитать послушать? А там глядишь кто то пойдёт дальше.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011659
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:17:34:

Mikhail Tchervonenko> А там глядишь кто то пойдёт дальше.
гусары, молчать!!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011660
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийHello, Fr0st-brutal!
You wrote on 20 июля 2015 г. 18:11:16:

Fr0st-brutal> Ну, обзор архитектуры проекта с т.з. кода - дело доброе и зело полезное,
> только вот нужное разве что разработчикам, а их ряды вроде как уже который год постоянны.
> А трудозатраты на создание подобного описания - ого-го.
Миша обещает "быструю окупаемость".
А рублик трудовой зажал...

да да, :) я помню, вернётся шеф с конфы, подкачу к нему с вопросом отнять деньги у африканских детей и направить на firebird :)
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011662
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:20:31:

Mikhail Tchervonenko> да да, :) я помню, вернётся шеф с конфы
вечерело. а бабушки всё падали и падали...
(с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011664
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mikhail Tchervonenko,

ты лучше скажи зачем тебе это нужно. Ты и впрямь решил ядро сервера пилить? Или так для общего ознакомления?

В трёшке есть немного другой путь для расширения функциональности. Там можно свои плагины писать и внешние процедуры/функции и триггеры. Вот по этому делу конечно статьи не хватает. Но появится (если появится конечно вообще) такая не раньше релиза.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011678
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов ДенисMikhail Tchervonenko,

ты лучше скажи зачем тебе это нужно. Ты и впрямь решил ядро сервера пилить? Или так для общего ознакомления?

В трёшке есть немного другой путь для расширения функциональности. Там можно свои плагины писать и внешние процедуры/функции и триггеры. Вот по этому делу конечно статьи не хватает. Но появится (если появится конечно вообще) такая не раньше релиза.
пилить может и нет, но попробовать разобраться хочется. Есть куча вопросов которые хотелось бы самому разобрать. Не будешь же по каждому из них разработчиков канать (тем более что для ответа на них им самим скорее всего прийдётся лезть в свой код, потому как никто из нас не помнит в деталях всего что сам писал когда то). А при наличии хотя бы путеводителя это все же проще. По своему опыту знаю, что чем дальше проект уходит без доки на проект тем меньше народа способно в него влиться. В какой то момент сложность вхождения превышает временной, финансовый итп подобный порог который может себе позволить разработчик. А если в какой то части разобраться то почему и не помочь, у меня есть примеры собственного альтруизма которые кому то нужны. Что то мне подсказывает что 3я версия FB уже как раз на грани того самого порога, а может уже и перепрыгнула его. Короче любопытсво плюс желание помочь если получится тот самый порог преодолеть.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011679
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:53:06:

Mikhail Tchervonenko> По своему опыту знаю...
Миша, у тебя нимб опять на уши сполз, поправь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011688
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийHello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:53:06:

Mikhail Tchervonenko> По своему опыту знаю...
Миша, у тебя нимб опять на уши сполз, поправь.

да да, буду скромней, спасибо :)
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011694
afgm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МимопроходящийHello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:53:06:

Mikhail Tchervonenko> По своему опыту знаю...
Миша, у тебя нимб опять на уши сполз, поправь.

А я поддержу начинание. Пусть никто не верит. Бери и делай!
Цитируя Пастернака...
Другие по живому следу
Пройдут твой путь за пядью пядь,
...
Записывай мысли по ходу изучения, а не выжидай год. Ибо потом всё будет казаться логичным и ненужным.
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39011700
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
afgmМимопроходящийHello, Mikhail Tchervonenko!
You wrote on 20 июля 2015 г. 18:53:06:

пропущено...

Миша, у тебя нимб опять на уши сполз, поправь.

А я поддержу начинание. Пусть никто не верит. Бери и делай!
Цитируя Пастернака...
Другие по живому следу
Пройдут твой путь за пядью пядь,
...
Записывай мысли по ходу изучения, а не выжидай год. Ибо потом всё будет казаться логичным и ненужным.
хорошая идея
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39012011
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И незаметно извилистыми тропинками флуда ушли от сборки FB к документированию архитектуры
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39012020
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на странице "Firebird Test Suite" битая ссылка на "FDB python драйвер"
занёс в баг трекер по сайту, но если кому нужен правильная ссылка то Вам сюда
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39012371
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimitr,

есть некоторые сомнения по поводу настройки драйвера для python
судя по python сырцам FDB ищет путь к fbclient тут HKEY_LOCAL_MACHINE\SOFTWARE\Firebird Project\Firebird Server\Instances\DefaultInstance (ibase.py)

Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
            elif sys.platform == 'win32':
                fb_library_name = find_library('fbclient.dll')
                if not fb_library_name:
                    # let's try windows registry
                    if PYTHON_MAJOR_VER == 3:
                        import winreg
                    else:
                        import _winreg as winreg

                    # try find via installed Firebird server
                    baseKey = 'SOFTWARE\Firebird Project\Firebird Server\Instances'
                    key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, baseKey)
                    instFold = winreg.QueryValueEx(key,'DefaultInstance')
                    fb_library_name = os.path.join(os.path.join(instFold[0], 'bin'), 'fbclient.dll')
            else:
                fb_library_name = find_library('fbclient')
                if not fb_library_name:
                    try:
                        x = CDLL('libfbclient.so')
                        fb_library_name = 'libfbclient.so'
                    except:
                        pass



при этом instreg.exe i ничего туда не заносит хоть и пишет

Код: sql
1.
2.
C:\Program Files (x86)\Firebird-2.5.2.26540-0_Win32\bin>instreg.exe i
Firebird has been successfully installed in the registry.



Судя по исходникам instreg - registry.h

Код: plaintext
1.
2.
3.
4.
5.
.......................
static const char* const REG_KEY_ROOT_COMPANY	= "SOFTWARE\\Firebird Project";
static const char* const REG_KEY_ROOT_PRODUCT	= "SOFTWARE\\Firebird Project\\Firebird Server";
static const char* const REG_KEY_ROOT_INSTANCES	= "SOFTWARE\\Firebird Project\\Firebird Server\\Instances";
.......................



и install_reg.cpp

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
...................
	if (sw_version)
		printf("instreg version %s\n", FB_VERSION);

	if (sw_command == COMMAND_NONE)
		usage_exit();

	HKEY hkey_node = HKEY_LOCAL_MACHINE;

	USHORT ret;
	switch (sw_command)
	{
		case COMMAND_INSTALL:
			ret = REGISTRY_install(hkey_node, directory, reg_error);
			if (ret != FB_SUCCESS)
				printf ("Firebird has not been installed in the registry.\n");
			else
				printf("Firebird has been successfully installed in the registry.\n");
			break;
................



и registry.cpp

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
...................
HKEY hkey_instances;
	DWORD disp;
	SLONG status = RegCreateKeyEx(hkey_rootnode,
			REG_KEY_ROOT_INSTANCES,
			0,
			"",
			REG_OPTION_NON_VOLATILE,
			KEY_WRITE,
			NULL, &hkey_instances, &disp);
	if (status != ERROR_SUCCESS) {
		return (*err_handler) (status, "RegCreateKeyEx", NULL);
	}

	TEXT path_name[MAXPATHLEN];
	TEXT* p;
	USHORT len = GetFullPathName(directory, sizeof(path_name), path_name, &p);
	if (len && path_name[len - 1] != '/' && path_name[len - 1] != '\\')
	{
		path_name[len++] = '\\';
		path_name[len] = 0;
	}

	if ((status = RegSetValueEx(hkey_instances, FB_DEFAULT_INSTANCE, 0,
			REG_SZ, reinterpret_cast<const BYTE*>(path_name),
			(DWORD) (len + 1))) != ERROR_SUCCESS)
	{
		(*err_handler) (status, "RegSetValueEx", hkey_instances);

		// Removes the "Instances" key if we just created it.
		// Else, keep it, because we don't want to trash other instances.
		if (disp == REG_CREATED_NEW_KEY)
		{
			RegDeleteKey(hkey_rootnode, REG_KEY_ROOT_INSTANCES);
			cleanup_key(hkey_rootnode, REG_KEY_ROOT_PRODUCT);
			cleanup_key(hkey_rootnode, REG_KEY_ROOT_COMPANY);
		}

		return FB_FAILURE;
	}

	RegCloseKey(hkey_instances);
....................



и install_nt.h

Код: plaintext
1.
2.
3.
......................
static const char* const FB_DEFAULT_INSTANCE	= "DefaultInstance";
......................



путь тот же, но в реестре он не появился (SOFTWARE\Firebird Project ... отсутствует ) (отладку не делал ещё, потому причину ещё не скажу) но даже если он там появится то python смотрит в DefaultInstance то как быть с остальными версиями FB если они установлены на том же компьютере? т.к. DefaultInstance может быть только одна в моём понимании

п.с. можно конечно скопировать в папку запуска тестов fbclient.dll (и это работает), или прописать ключик руками (что и сделал) но хотелось бы разобраться в логике раз уж залез, как задумано то было? Собственно раньше жил без этого ключа и все работало, что тут по идее лучше, подправить код драйвера FDB или добиться работы instreg как задумано?

п.с. по мне было бы разумнее в python сделать config файл и читать настройки из него с возможностью смены FB а если его нет тогда уж в реестр лезть в котором тоже не мешало бы разделить инсталляции FB на машине. Согласитесь, было бы гораздо разумнее сделать ключ например по номеру порта и автоматом брать fbclient из той инсталляции что привязана к этому порту в config файле или реестре (а номер брать из connect).

вообще где все это обсуждается дабы не захламлять форум, на трекере ссылки не нашел

спасибо
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39012393
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mikhail Tchervonenkoпри этом instreg.exe i ничего туда не заносит32-битный ?
Тогда ищем в HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node
...
Рейтинг: 0 / 0
Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
    #39012416
Фотография Mikhail Tchervonenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladMikhail Tchervonenkoпри этом instreg.exe i ничего туда не заносит32-битный ?
Тогда ищем в HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node

спасибо, действительно, добавил в python FDB ibase.py секцию для win64 с исправленным path и все заработало

Код: python
1.
2.
3.
4.
5.
.......
elif sys.platform == 'win32':
......
elif sys.platform == 'win64':
......



п.с. не мешает на такой случай и драйвер подправить, 32 битный FB на 64 битной оси не редкость
...
Рейтинг: 0 / 0
25 сообщений из 77, страница 3 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Статическая сборка fbclient, не зависящего от MS VC runtime, для чайников
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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