Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];

Вниз

Почему после того как я ввожу Connection String внутри программы   Найти похожие ветки 

 
IGORYOK   (2003-11-06 16:01) [0]

Почему после того как я ввожу Connection String внутри программы - притом такой-же как с помощью билдера - моя программа виснет со StackOverflow. Потом пока не удалишь модуль из проекта при загрузке Дельфи будет появляться - Закрыть всё нафиг от Windowsa. Вопрос почему? При том ремарка - на одной проге это получилось, а на всех остальных не прошло -???????????


 
Eugene1501   (2003-11-06 16:07) [1]

Наверное что-то зацикливается. Посмотри внимательно на обработу событий TConnection.


 
sniknik   (2003-11-06 16:08) [2]

проверь код, строки с 17-й по ... а до конца. особое внимание обрати на код в обработчиках событий т.к. в одном из них ты вызываеш метод который егоже (это событие) генерит.


 
IGORYOK   (2003-11-06 16:17) [3]

unit DMod;
interface
uses
SysUtils, Classes, DB, ADODB, Dialogs, Forms;
type
TDM = class(TDataModule)
ADOCon: TADOConnection;
TapesT: TADOTable;
PerfT: TADOTable;
AllSongsT: TADOTable;
TapesDS: TDataSource;
PerfDS: TDataSource;
AllSongsDS: TDataSource;
AllSongsTNumOfTape: TIntegerField;
AllSongsTNameOfSong: TWideStringField;
TapesTNumOfTape: TAutoIncField;
TapesTCasNum: TIntegerField;
TapesTPerfName: TWideStringField;
TapesTAlbumName: TWideStringField;
TapesTYearPresentation: TIntegerField;
TapesTPlace: TWideStringField;
PerfTPerNameShort: TWideStringField;
AllSongsTIDPesna: TAutoIncField;
procedure AllSongsTAfterPost(DataSet: TDataSet);
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var DM: TDM;
implementation
uses MainF;
{$R *.dfm}
procedure TDM.AllSongsTAfterPost(DataSet: TDataSet);
begin
if DataSet.FieldByName("NumOfTape").IsNull then begin
DataSet.Edit;
DataSet.FieldByName("NumOfTape").AsInteger:=TapesT.FieldByName("CasNum").AsInteger;
DataSet.Post;
end;end;
procedure TDM.DataModuleCreate(Sender: TObject);
begin
ADOCon.ConnectionString:="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source="+ ExtractFilePath(Application.ExeName)+"Data\mainbase2000.mdb;Mode=Share Deny None;";
TapesT.Active:=true;PerfT.Active:=true;
AllSongsT.Active:=true;
end;

Это всё что там есть!
Естественно по Data\mainbase2000.mdb находиться база
Просто раньше для удобства там стоял стринг автоматически чтобы можно было удобно компилить - потом заменил и опаньки, так главно в другой проге сделал так же и нормально, а здесь даже Дельфи валиться. Может это защитный механизм ADO


 
bushmen   (2003-11-06 16:18) [4]

>IGORYOK ©

Вам еще не надоело задавать бессмысленные вопросы?


 
sokohigh   (2003-11-06 17:23) [5]

Попробуй что-нибудь, типа этого, может станет яснее:

with ADOConnection1 do
try
Connected := false;
ConnectionString := "...";
Connected := true;
except
on E:Exception do ShowMessage(E.Message);
end
;


 
IGORYOK   (2003-11-06 17:24) [6]

Программа DELPHI32 вызвала сбой при обращении к странице памяти
в модуле ADORTL60.BPL по адресу 017f:40667785.
Регистры:
EAX=05c19a8c CS=017f EIP=40667785 EFLGS=00010202
EBX=4066cd07 SS=0187 ESP=00db0000 EBP=00eaf704
ECX=0000000d DS=0187 ESI=00db1f08 FS=34b7
EDX=40058920 ES=0187 EDI=00eaf6e8 GS=0000
Байты по адресу CS:EIP:
e8 ee ff ff ff c3 90 55 8b ec 6a 00 6a 00 6a 00
Содержимое стека:
4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a 4066778a
Вот что появляется при загрузке проекта.
Значит дело в инициализации
Скажите неужели у Вас такого не происходило?


 
IGORYOK   (2003-11-06 17:25) [7]

sokohigh (06.11.03 17:23) [5]
я не могу подобное вписать потому- что сам проект не могу открыть


 
sokohigh   (2003-11-06 17:33) [8]

попробуй переименовать mdb, или в dfm-е скинь свойство Connected у ADOConnection


 
sniknik   (2003-11-06 17:42) [9]

> Это всё что там есть!
а ничего больше и не надо.
procedure TDM.AllSongsT AfterPost(DataSet: TDataSet);
begin
....
DataSet. Post;
end;

(хотя позволю себе не согласится, там еще должно быть "end." как минимум)


 
IGORYOK   (2003-11-06 17:45) [10]

Я понял в чём дело оказывается Active стоял True и он пытался загрузить базу без ConnectionString при инициализации. И это приводило к такому
Алилуя Я опять люблю весь мир у Вас ребята Спасибо за всё


 
jazz   (2003-11-06 17:48) [11]

я очень извиняюсь но у меня была такая проблема просто в самом начале на потасить ADOCon.ConnectionString:=эFILE NAME="+ а затем писать все остальное


 
jazz   (2003-11-06 17:48) [12]

я очень извиняюсь но у меня была такая проблема просто в самом начале на потасить ADOCon.ConnectionString:=FILE NAME="+ а затем писать все остальное



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.11.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.081 c
3-89720
lovres
2003-11-10 09:43
2003.11.27
Ошибка Invalid use of keyword в запросе


4-90178
Kair
2003-10-01 11:18
2003.11.27
ReadDirectoryChangesW


1-89835
Мыш
2003-11-16 22:42
2003.11.27
Стратегический вопрос


4-90158
LG
2003-10-05 04:33
2003.11.27
Как вывести список файлов текущей директории


4-90164
Davinchi
2003-10-04 14:38
2003.11.27
Завершение работы приложения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский