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

Вниз

Коннект к базе данных!!!!!   Найти похожие ветки 

 
Julya   (2002-07-23 11:01) [0]

До подключения к дазе проверяется условие - с какого компа происходит коннект к базе, в зав-ти от этого можно/нельзя редактить записи. Я беру GetComputerName(buf, nSize) и проверяю, после этого криэйчу датамодуль. Коннект должен быть в любом случае, но у меня прога почему то виснет.......
Вот без этой проверки все работало, а тут - не пойму почему....
Подскажите, пожалуйста!!!!!!!Может что не так делаю.....


 
AngeL B.   (2002-07-23 11:11) [1]

Подсказываем! Ты что-то не так делаешь...
Для более подробной подсказки нужны подробности


 
Julya   (2002-07-23 11:26) [2]

Аксессовская база, вначале криэйтится главный модуль, потом датамодуль. В форм криэйте главной формы проверяю условие - тот ли это комп, с которого можно редактить, если да, то присваиваю режим Админа, иначе- режим юзера. Дальше криэйчу датамодуль, если режим юзера - ридонли таблиц=TRUE.
После этого криэйтится другая форма, в которой открываются таблицы базы. Может прога виснет в этом месте, шут ее знает, точно сказать не могу...
но : если убрать проверку на сетевое имя компа - все работает!
Может я не в том месте проверяю????????
Помогите, пожал-ста, кто знает!!!!!!!!!!!!!


 
Julya   (2002-07-23 11:42) [3]

Вот Код:
procedure TMainForm.FormCreate(Sender: TObject);

begin
try
with TLoginForm.Create(Application) do begin
if ShowModal = mrCancel then
raise Exception.Create("Завершение работы программы"){TerminateApplication}
else begin
if (UpperCase(Edit1.Text) = ADMINPASSWORD) then
//проверка на сетевое имя компа
//если из офо, то разрешаем редактить
IF GetCompName then - если этот иф убрать, то все работает!!(((
AppMode := amAdmin
else AppMode := amUser
else
if UpperCase(Edit1.Text) = USERPASSWORD then
AppMode := amUser
else
raise Exception.Create("Пароль неверен! Нет доступа к программе."){TerminateApplication};
Release;
end;
end;

dmReis := TdmReis.Create(Self); - вот тут прога вылетает!!!Аксесс виолейшен...

dmReis.Database.Connected := True;
except
on E: Exception do begin
Application.MessageBox(PChar(E.Message), "Ошибка", MB_OK or MB_ICONERROR);
TerminateApplication;
end;
end;
end;

что неверно???помогите!!!!


 
Romkin   (2002-07-23 11:51) [4]

Текст GetCompName, пожалуйста


 
Julya   (2002-07-23 11:54) [5]

Текст функции проверки -
Function TMainForm.GetCompName : Boolean;
Const mas : array [0..11] of String = ("VTSAMIICWOPZ08","VTSAMIICSADM04","VTSAMIICWOPZ01",
"vtsamuprwofo01","vtsamuprwofo03","vtsamuprwofo04","vtsamuprwofo05",
"vtsamuprwofo06","vtsamuprwofo07","vtsamuprwofo08","vtsamuprwofo09",
"vtsamuprwofo10");
Var
buf : PChar;
nSize : Cardinal;
s : String;
i : Byte;
Begin
Result := False;
GetComputerName(buf, nSize);
s := string(buf);
For i:=0 to 11 do
if s = mas[i] then begin
Result := True;
Exit;
end;
end;


 
Romkin   (2002-07-23 12:25) [6]

Ну да, а кто для Buf память выделять будет?! Пушкин? и nSize указывать?

function GetCompName: string;
var
Buf: string;
nSize: cardinal;
begin
nSize := MAX_COMPUTERNAME_LENGTH + 1;
SetLength(Buf, nSize - 1);
GetComputerName(PChar(Buf), nSize);
SetLength(Buf, nSize);
Result := buf;
end;



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

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

Наверх





Память: 0.46 MB
Время: 0.006 c
6-35395
Donal_Graeme
2002-05-28 13:43
2002.08.12
ICMP Ping


14-35417
Елена
2002-07-15 07:32
2002.08.12
Digitman, с Днем Варенья!!!


6-35401
ZED
2002-05-30 00:33
2002.08.12
TWebBrowser - как узнать содержимое формы


14-35441
firsor
2002-07-17 09:53
2002.08.12
Есть ли компонента имитирующая индикатор скорости?


4-35512
Help
2002-06-03 16:15
2002.08.12
HTML Title





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский