![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
пишу прогу для вывода моей БД в делфи, вроде в коде всё нормально, но не выводит и выдает окошко с ошибкой. код модуля БД
Код:
unit Unit2;
interface
uses
SysUtils, Classes, DBTables, DB;
type
TDM = class(TDataModule)
instruments: TQuery;
Database: TDatabase;
Session: TSession;
instrumentsDS: TDataSource;
procedure DataModuleCreate(Sender: TObject);
procedure DataModuleDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const my_alias = 'instruments';
datapth = 'C:\Documents and Settings\1\Ðàáî÷èé ñòîë\ìîÿ ðàáîòà â delphi\ÁÄ';
var
DM: TDM;
implementation
{$R *.dfm}
procedure TDM.DataModuleCreate(Sender: TObject);
begin
with session do
begin
Active:=false;
PrivateDir:=ExtractFilePath(PARAMSTR(0));
Active:=true;
if not(isalias(my_alias)) then
begin
ConfigMode:=cmPersistent;
AddStandardAlias(my_alias,ExtractFilePath(PARAMSTR(0))+datapth,'PARADOX');
SaveConfigFile
end;
Database.AliasName:=my_alias;
Database.Connected:=true;
with instruments do
begin
Prepare;
Open
end;
end;
end;
procedure TDM.DataModuleDestroy(Sender: TObject);
begin
with database do
if connected then
begin
CloseDataSets;
Connected:=false;
end;
with session do
if active then
close
end;
end.а это код её вывода Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Grids, DBGrids,unit2;
type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
end. |
|
#2
|
|||
|
|||
|
Цитата:
|
|
#3
|
||||
|
||||
|
Скорее всего крякозяблики тут появились. Проблема наверняка вот в этом:
Код:
ExtractFilePath(PARAMSTR(0))+datapth Надо наоборот: Код:
datapth+ExtractFilePath(PARAMSTR(0)) |
|
#4
|
|||
|
|||
|
Скажу даже больше, функция ExtractFilePath с параметром PARAMSTR(0) вернёт путь к exe файлу, и путь этот начнётся с названия диска (С:, D: и т.п.)
К тому же и сам datapth содержит в пути "С:…" Поэтому этот момент необходимо утрясти. Т.о.: Код:
ExtractFilePath(PARAMSTR(0))+datapth |