Пятница, 02.10.2026, 09:33
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Форма входа
Меню сайта
Главная » FAQ » Программирование Delphi [ Добавить вопрос ]

Программирование Delphi [91]
Вопрос-Ответ по программированию

Ответ :
Создайте новое приложение, затем удалите из проекта все unitы - (Delphi 3 - View - Project Manager)
(Delphi 4 - Project - Remove from project)
Откройте файл проекта
(Delphi 3 - View - Project Source)
(Delphi 3 - Project - View Source)
и отредактируйте его так как приведино ниже.

Пример :

 
             program Project1; 
 
             {$R *.RES} 
 
             uses SysUtils; 
 
             var 
               f : TextFile; 
 
             begin 
               AssignFile(f, 'TestFile.Txt'); 
               ReWrite(f); 
               Writeln(f, 'Test'); 
               Close(f); 
             end. 
Добавил: casperof

В Delphi 3 значение "True" для типов ByteBool, WordBool LongBool представляется как -1 для совместимости с Microsoft Visual Basic. Многие компиляторы представляют "True" как либо "не нуль" либо 1. При передаче параметров в не Visual Basic-приложения Вам следует придерживаться следующей техники во избежание несовместимости:

 
             LongBool(Abs(True)); 
 

При приеме значений типа boolean из внешних программ Вам следует всегда проверять его на значение "False". Эта техника всегда работает, поскольку "False" всегда представляется нулем.

 
             if BoolValPassed <> False then DoSomething. 
Добавил: casperof

Используйте Win32_Find_Data поле TSearchRec.
Пример :

 
             procedure TForm1.Button1Click(Sender: TObject); 
             var 
               SearchRec : TSearchRec; 
               Success : integer; 
             begin 
               Success := SysUtils.FindFirst('C:\DownLoad\dial-u~1.htm', 
                                             faAnyFile, 
                                             SearchRec); 
               if Success = 0 then begin 
                 ShowMessage(SearchRec.FindData.CFileName); 
               end; 
               SysUtils.FindClose(SearchRec); 
             end; 
Добавил: casperof

Можно сделать это, используя "IFOPT" и "DEFINE".

 
             type 
               PSomeArray = ^TSomeArray; 
               TSomeArray = array[0..0] of integer; 
 
             procedure TForm1.Button1Click(Sender: TObject); 
             var 
               p : PSomeArray; 
               i : integer; 
 
             begin 
             {$IFOPT R+} 
               {$DEFINE CKRANGE} 
               {$R-} 
             {$ENDIF} 
               GetMem(p, sizeof(integer) * 200); 
                  
               try 
                 for i := 1 to 200 do 
                   p[i] := i; 
               finally 
                 FreeMem(p, sizeof(integer) * 200); 
               end; 
 
             {$IFDEF CKRANGE} 
               {$UNDEF CKRANGE} 
               {$R+} 
             {$ENDIF} 
             end; 
 
Добавил: casperof

Следующий пример взят из файла BDE32.HLP Borland/CommonFiles/BDE directory:

 
 
             implementation 
 
             {$R *.DFM} 
 
             uses DbiTypes, DbiProcs; 
 
             function fDbiFormFullName(Tbl: TTable): String; 
             var 
               Props: CurProps; 
               Buffer1 : array[0..DBIMAXPATHLEN] of char; 
               Buffer2 : array[0..DBIMAXPATHLEN] of char; 
             begin 
               Check(DbiGetCursorProps(Tbl.Handle,Props)); 
               StrPCopy(Buffer1, Tbl.TableName); 
               Check(DbiFormFullName(Tbl.DBHandle, 
                                     @Buffer1, 
                                     Props.szTableType, 
                                     @Buffer2)); 
               Result := StrPas(Buffer2); 
             end; 
 
             procedure TForm1.Button1Click(Sender: TObject); 
             begin 
               Memo1.Lines.Add(fDbiFormFullName(Table1)); 
             end; 
 
             Примечание: 
               Таблица должна быть открытой.   
               Работает с локальными таблицами.
Добавил: casperof

Наш опрос
С какого поисковика вам стал известен сайт?
Всего ответов: 28
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Поиск