Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi

Автор: RostY
Дата сообщения: 17.02.2006 14:56
В других датабейсах есть пропертя LoginPrompt. Там должно быть что-то похожее
Автор: BABAYKA
Дата сообщения: 17.02.2006 15:12
RostY
да ...у фиба датабейса UseLoginPromt....поставил фэлс и Connect=Falce....все ОК...логин и пасс забиваю со своей формы коннект с базой идет......вот теперь думаю как описать событие на некорректный пароль или логин.....
Автор: RostY
Дата сообщения: 17.02.2006 15:56
try pFIBDatabase1.Connected:=True;
except
MessageDlg('Неальо !!!', mtWarning, [mbYES,mbOK], 0);
...
end;

а книжки читать не пробовал ?
Автор: BABAYKA
Дата сообщения: 17.02.2006 16:13
RostY

Цитата:
а книжки читать не пробовал ?

читаю книжки....статьи и пр.....но не успел пока много начитать и напробовать....., а я написал немного иначе:
except
ShowMessage('ля..ля..ля');
end;
Автор: RostY
Дата сообщения: 17.02.2006 16:16
Перед "ля" букву пропустил
Автор: BABAYKA
Дата сообщения: 17.02.2006 16:22
RostY

Цитата:
Перед "ля" букву пропустил

да? какую?....
Автор: Markell
Дата сообщения: 20.02.2006 10:22
Я работаю с SQL Server 2000 из Windows Forms Application - Delphi 2005 for .Net

Такая ситуация: Соединение с БД установлено через SQLConnection. Теперь мне нужно из базы по простому запросу выбрать список и запихнуть его в ComboBox - ничего не получается. Запрос простейший:
Select Distinct city
From Customers

Помогите плиз :/

ЗЫ: Пробовал считывать из БД таблицу целиком и запихивать ее в DataGrid - все в порядке.
Автор: PowerChute
Дата сообщения: 20.02.2006 10:33
Markell


Цитата:

sl := TStringList.Create;

Select Distinct city // открыть запрос
From Customers

First; sl.Clear;
while not eof do begin
sl.Add (FieldByName('city').asString);
Next;
end;
Close; // закрыть запрос
end;

ComboBox.Items.Assign (sl);

sl.Free;

Так не пробовал?
Автор: Markell
Дата сообщения: 20.02.2006 10:52
PowerChute
Спасибо! Некоторые уточнения:
sl определил как string;
Но где взять в Windows Forms Application StringList?
А так же как определять First и Next?
Автор: RostY
Дата сообщения: 20.02.2006 12:05


var sl: TStringList;

First и Next - методы датасета
Автор: PowerChute
Дата сообщения: 20.02.2006 12:21
Markell
RostY прав. Я же тебе не весь код написал, а так выдержку небольшую.

Цитата:
Но где взять в Windows Forms Application StringList?

Unit
Classes
Автор: Markell
Дата сообщения: 20.02.2006 13:25
RostY
Я не просто так спрашиваю про этот TstringList. Он является инструментом VCL Forms Applications. А я работаю с Windows Forms Application - там нет такого!!! Как в такой ситуации быть?


Добавлено:
PowerChuteДа, спасибо, с TStringList понял.
Вот только все равно вопросы еще остаются:
Ведь нельзя же писать текст запроса прямо в тексте программы
в таком виде:

Select Distinct city // открыть запрос
From Customers

??? Система ругается и подчеркивает все слова красным. Тоже самое происходит и со словами First, Next, FieldByName, asString...

ЗЫ: Извиняюсь, если мои вопросы совсем ламерские, просто только начинаю разбираться с этим всем...
Автор: Pinocchio
Дата сообщения: 20.02.2006 14:12
Markell

Цитата:
А я работаю с Windows Forms Application

Правильно делаешь. А запросы пиши в кавычках типа:

Код:
'Select Distinct city'#32+ // открыть запрос
'From Customers'
Автор: Markell
Дата сообщения: 20.02.2006 15:18
Я только все никак не пойму, что же делать со словами First, Next, FieldByName, asString?
Там где-то что-то надо добавить, чтобы они понимались?
Автор: SERGE_BLIZNUK
Дата сообщения: 20.02.2006 16:00
Markell

Цитата:
Я только все никак не пойму, что же делать со словами First, Next, FieldByName, asString?


вы не шутите?!?!?

Так срочно всё бросить - и читать, читать, читать...

в двух словах - вы бросаете на форму Dataset -
и вот у него есть методы First Next ....
вам же Rosty об этом написал...

короче, если вам нужен рабочий пример - пишите мне в ПМ

Автор: SergeBS
Дата сообщения: 21.02.2006 08:12
SERGE_BLIZNUK
Папку \Demos\Db собрался выслать ?
Автор: ArtSnegirev
Дата сообщения: 21.02.2006 11:01
Подскажите, пожалуйста!
как проверить, не зянят ли файл другим приложением на запись?
моя прога должна начинать обработку файла только после того, как он будет полностью сформирован и закрыт другой программой.
пробовал открывать через функцию FileOpen(FileName, fmShareExclusive) - не помогает. ( проверял так - открывал файл FARом по F4 и запускал свою прогу - все равно открывается без проблем. а должна подождать пока файл не освободится.
Автор: SERGE_BLIZNUK
Дата сообщения: 21.02.2006 11:02

Цитата:
Папку \Demos\Db собрался выслать

8-))) ну, в принципе было бы неплохо... 8-))
Автор: vshersh
Дата сообщения: 21.02.2006 11:06
ArtSnegirev
пиши:

Код: try
with TfileStream.Create('имя файла', fmOpenRead or fmShareExclusive) do
Free;
//свободен
except
//занят
end;
Автор: ArtSnegirev
Дата сообщения: 21.02.2006 11:53
еще вопрос
как получить (обработать) в программе текст ошибки, генерируемой обработчиком исключений при появлении самого исключения. например, в Delphi при возникновении исключительной ситуации возникает окно с текстом, описывающем исключение. вот этот текст мне и нужно получить в программе.

vshersh
спасибо за подсказку. работает. к тому же выяснил, что редактор файлов в FARе не блокирует редактируемый файл. проверял, занимая файл WORDом


Автор: vshersh
Дата сообщения: 21.02.2006 12:13
ArtSnegirev
RTFM Exception, Exception handling

try
// do something raise!
except
on E: Exception do
//E.Message - text of exception object
ShowMessage(E.Message);
end;

Автор: Wiz80
Дата сообщения: 21.02.2006 23:20
Подскажите плиз, как в Delphi 7 установить соединение PPPoE и контролировать его состояние?
Автор: RostY
Дата сообщения: 22.02.2006 11:48
Кто-то пользовался Ehlib 4.1 ?

у меня Incremental search не работает - получаю "List index out of bounds". В версии 3.6 все нормально. Кто-то встречался с такой ситуацией ?
Автор: Markell
Дата сообщения: 22.02.2006 15:01
Скажите плз, кто-нибудь знает, как можно в Windows Forms Application - Delphi 2005 for .Net обратиться к конкретной ячейке объекта DataTable для того, чтобы взять из нее ее значение и затем присвоить его какой-нибудь переменной?
Автор: OdesitVadim
Дата сообщения: 22.02.2006 16:21
Markell
Также как и в других Делфях - никак (ну практически). Это работа с базами данных. Там нет "столбцов с номером" там есть поле записи. Пожетому правильный ответ будет - составить SQL запрос, в котором выбрать нужное поле по условию. И во вторых запомни, что говорить ячейка в пятой строке также некорекно, так как строки в базе могут в перемешку и не совсем так как ты их видишь
Автор: Schatz
Дата сообщения: 23.02.2006 07:39
(Delphi 7)
ActiveX+IndyTCPClient='Access violation'
Создаю ActivX форму, ложу на нее idTCPClient1.
Есть процедура:
Procedure StartClient;
Begin
try
ClientFrmMain.Client.Connect(10000);//***
ClientHandleThread := TClientHandleThread.Create(True);
ClientHandleThread.FreeOnTerminate:=True;
ClientHandleThread.Resume;
except
on E: Exception do MessageDlg ('Error while connecting:'+#13+E.Message, mtError, [mbOk], 0);
end;
end;
При вызове этой процедуры на на строке *** программа спотыкается и выдает сообщение 'Access violation at adress ******* in nodule ******'

Хотя если все перенести в обычный win application то все работает нормально.

ПОдскажите как обойти эту проблему.
Зарание огромное спасибо и поздравляю всех с дем защитника.
Автор: vshersh
Дата сообщения: 23.02.2006 09:19
Schatz
Поставь перед строкой *** (сразу после try)

Код: Assert(Assigned(ClientFrmMain) and Assigned(ClientFrmMain.Client))
Автор: Schatz
Дата сообщения: 23.02.2006 09:49
vshersh


Цитата:
Schatz
Поставь перед строкой *** (сразу после try)

Assert(Assigned(ClientFrmMain) and Assigned(ClientFrmMain.Client))


и попробуй еще раз


Сделал как ты сказал - ругается: 'Assertion failure (путь\имя проекта, номер строки) '
Автор: vshersh
Дата сообщения: 23.02.2006 09:54
Schatz
Значит ты обращаешься к пустой переменной или не создан на форме Client.

От куда берется значение ClientFrmMain?
Автор: Schatz
Дата сообщения: 23.02.2006 10:41
vshersh

TAlexZ_ClientSK = class(TActiveForm, IAlexZ_ClientSK)
Label1: TLabel;
Client: TIdTCPClient;
****
****
end;
***
***
var
ClientFrmMain: TAlexZ_ClientSK;
implementation
***

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Вероятность одинакового CRC32


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.