Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Компоненты + Библиотека [D7, WinXP]


Kolt ©   (2004-08-30 06:10:00) 

Уважаемые господа, подскажите начинающему программеру. Вот я пишу библиотеку, в ней использую следующий код:
procedure Record_UserName (RLogin:String);
begin
MessageBox(0, 'Login', PAnsiChar('Login= '), 1);

DataModule_Users:= TDataModule_Users.CreateNew(DataModule_Users);
MessageBox(0, 'Login', PAnsiChar('Login= '), 1);
DataModule_Users.TableUsers.Insert;
DataModule_Users.TableUsers.Edit;
MessageBox(0, 'Login', PAnsiChar('Login= '), 1);
DataModule_Users.TableUsers.FieldByName('User').Value:=RLogin;
DataModule_Users.TableUsers.Post;

и приложение:

procedure Export_UserName (Login:String);
external  'connect.dll';
procedure Record_UserName (RLogin:String);
external  'connect.dll';
..............
procedure TForm1.Button1Click(Sender: TObject);
begin
//  Export_UserName(Edit1.Text);
Record_UserName (Edit1.Text);
end;

Проблемма в том что всё это не хочет работать. Я чтобы не описывать в библиотеке компоненты для работы с БД в ручную я в библиотеку добавил компонент DataModule в него накидал таблицы.... Не ужто всё нужно будет описывать в ручную, а нельзя ли с помощью компонентов ???


Amoeba   (2004-09-01 13:12:00) [1]

Что там написано  про ShareMem? Ты это хоть прочитал?


Думкин   (2004-08-31 07:48:00) [2]

>  [8] Kolt ©   (31.08.04 07:16)

А там и написано по русски, вернее на английском, но...мы программисты или где?


Kolt   (2004-08-31 07:16:00) [3]

Блин, все такие умные, а что словами на руссом сказать не можете ???


GuAV   (2004-08-30 17:44:00) [4]

New->Other-Dll Wizard.
и читать что он пишет.


Kolt   (2004-08-30 15:12:00) [5]

А как можно... ???
Access violation at adress 00531D72 in module connect.dll Real of address 00000000
Таблица в активе и всё такое.... просто если в обычном проекте создаю модуль данных кидаю те же компоненты вставляю то-же код всё окей...


Erik1   (2004-08-30 11:10:00) [6]

Опять никто нехочит читать, что в DLL визард пишет! Ну нельзя так передавать строки, нельзя понимасш a...?!
Передавай PChar.


TUser   (2004-08-30 09:46:00) [7]

Какую ошибку-то пишет?
Таблица, конечно, создана, active и все такое?


Kolt   (2004-08-30 07:48:00) [8]

Ошибка в доступе к памяти..... много Логинов это я так для проверки (после какой строки типа ошибка).... Ошибка при выполнении DataModule_Users.TableUsers.Insert;
....

Mim1можно подробнее ???


Mim1   (2004-08-30 07:28:00) [9]

разместите модуль данных в пакете, и с этим пакетом откомпилировать EXE и DLL. Пропадут проблеммы с разными экземплярами классов и с sharedmem.


Ozone   (2004-08-30 06:36:00) [10]

1. Зачем так много "Login"'ов?
2. После Insert не нужно Edit

>> Проблемма в том что всё это не хочет работать.

Что именно не работает? Выдает ошибку? Какую?


Наверх

Титульная страница Поиск, карта сайта Написать письмо