Отправляет email-рассылки с помощью сервиса Sendsay

Delphi - проблемы и решения

  Все выпуски  

Проблемы и решения в Delphi #46


Служба Рассылок Subscribe.Ru

5737 подписчиков.

Проблемы и решения в Delphi - выпуск 46 от 07.02.2002.


Прыгнул сам - помоги другому...


* В БАЗУ OFFLine * * ВСЕ ВОПРОСЫ * * СПРОСИТЬ * * ПРЕДЛОЖИТЬ * * АРХИВЫ * * СКОЛЬКО НАС *


Доброго Вам времени суток уважаемый читатель.



Вот я и сделал то, о чем говорили еще большевики :) Теперь у нас с вами есть своя база взаимопомощи. Каждый может к ней обратиться и, естественно взять или положить что-то! Так что если у вас есть что-то чего еще нет в базе(а нет там еще многого) , то милости просим. Ну и себе не отказывайте в необходимом. Я со своей стороны тоже, как говорится - чем смогу... Единственно - есть большая просьба: описывайте в письме то, что вы шлете и свои впечатления от использования!


Как обычно в выпуске:

1. Очередные вопросы.
2. Отвеченные вопросы.
3. Наша база OFFLine взаимопомощи.


* В БАЗУ OFFLine * * ВСЕ ВОПРОСЫ * * СПРОСИТЬ * * ПРЕДЛОЖИТЬ * * АРХИВЫ * * СКОЛЬКО НАС *

1. Очередные вопросы.

Вопрос 667:
От: sss

Как экспортировать таблицу базы данных в ASCII-файл?


Ответить.


Попробуй так:
procedure TMyTable.ExportToASCII; var I: Integer; Dl <br> g: TSaveDialog; ASCIIFile: TextFile; Res: Boolean; begin if Active then if (FieldCount > 0) and (RecordCount > 0) then begin Dlg := TSaveDialog.Create(Application); Dlg.FileName := FASCIIFileName; Dlg.Filter := 'ASCII-Fiels (*.asc)|*.asc'; Dlg.Options := Dlg.Options+[ofPathMustExist, ofOverwritePrompt, ofHideReadOnly]; Dlg.Title := 'Экспоритровать данные в ASCII-файл'; try Res := Dlg.Execute; if Res then FASCIIFileName := Dlg.FileName; finally Dlg.Free; end; if Res then begin AssignFile(ASCIIFile, FASCIIFileName); Rewrite(ASCIIFile); First; if FASCIIFieldNames then begin for I := 0 to FieldCount-1 do begin Write(ASCIIFile, Fields[I].FieldName); if I <> FieldCount-1 then Write(ASCIIFile, FASCIISeparator); end; Write(ASCIIFile, #13#10); end; while not EOF do begin for I := 0 to FieldCount-1 do begin Write(ASCIIFile, Fields[I].Text); if I <> FieldCount-1 then Write(ASCIIFile, FASCIISeparator); end; Next; if not EOF then Write(ASCIIFile, #13#10); end; CloseFile(ASCIIFile); if IOResult <> 0 then MessageDlg('Ошибка при создании или переписывании '+ 'в ASCII-файл', mtError, [mbOK], 0); end; end else MessageDlg('Нет данных для экспортирования.', mtInformation, [mbOK], 0) else MessageDlg('Таблица должна быть открытой, чтобы данные '+ 'можно было экспортировать в ASCII-формат.', mtError, [mbOK], 0); end;


Вопрос 668:
От: Dmitry

Имеется 2 формы, на первой форме переменная "a"
имеет какое-нибудь значение (к примеру "Дельфи").
Каким образом эту переменную
перенести на 2 форму, к примеру "Дельфи" написать в Edit1 на форме 2.


Ответить.


Попробуй так:


Вопрос 669:
От: zuka

Может, кто-то встречался, при открытии OpenDialog необходимо
отсортировать файлы по дате, как это сделать?


Ответить.


Попробуй так:


Вопрос 670:
От: Pilligrimm

Добрый день. Решаю задачи по определению корреляционных функций
пространственных сигналов. На выходе нужно получить трехмерное
изображение поверхности (корреляционной функции). Вопрос - с помощью
какого компонента лучше всего строить трехмерное изображение, и ,
соответственно, где этим компонентом можно разжиться.


Ответить.


Попробуй так:


Вопрос 671:
От: Данилюк Алексей Вадимович

НЕ получается русифицировать базы, т.е. эксплоере не могу нормально
видеть содержимое базы данных. Формат баз DBase...


Ответить.


Попробуй так:


Вопрос 672:
От: Dmitry Shkil

Подскажите как рисовать иконки програмно. Мне нужно получить иконку
размером 16х16 и написать на ней цифорки. Как создать, нарисовать, что
бы потом можно было к ней обращаться по hIcon.


Ответить.


Попробуй так:


Вопрос 673:
От: Данилюк Алексей Вадимович

У меня картинка в BMP формате (размеры
3243 на 2335, 16 цветов).
Как пустить такую картинку на печать из моей программы, но, чтобы она
влазила на лист
формата А4, альбомной ориентации.


Ответить.


Попробуй так:


Вопрос 674:
От: G.Marat

Вопрос: Как узнать метку диска? Пробовал через FindFirst с параметром
faVolumeID и через GetVolumeInformation. В VB все работает, а на
дельфу перевести никак не могу. Вот код на VB:
Private function GetVolumeLabel(DriveName as String) As String
    Dim pos as Long
    GetVolumeLabel = Space$(14)
    Dim drvFileSystem as string
    if GetVolumeInformation(DriveName, GetVolumeLabel,
Len(GetVolumeLabel), _
        0, 0, 0, drvFileSystem, Len(drvFileSystem)) = 1 then
        pos = InStr(GetVolumeLabel, Chr$(0))
        if pos <> 0 then GetVolumeLabel = Left$(GetVolumeLabel, pos - 1)
        if Len(Trim$(GetVolumeLabel)) = 0 then GetVolumeLabel = ""
    end if
end function
И еще одно: как конвертнуть текст из дос в вин кодировку?
Пример на VB, опять же, у меня есть:
public function ConvertString(ByVal strSrc as String, _
    ByVal nFromCP as Long, ByVal nToCP As Long) As string
    Dim nLen as Long
    Dim strDst as string
    Dim strRet as string
    Dim nRet as Long
    nLen = Len(strSrc)
    strDst = String(nLen * 2, Chr(0))
    strRet = String(nLen * 2, Chr(0))
    nRet = MultiByteToWideChar(nFromCP, MB_PRECOMPOSED, strSrc, nLen,
strDst, nLen)
    nRet = WideCharToMultiByte(nToCP, 0, strDst, nRet, strRet, nLen * 2,
ByVal 0, 0)
    ConvertString = Left(strRet, nRet)
end function


Ответить.


Попробуй так:


Вопрос 675:
От: Leonid

Как в другое приложение послать сообщение о сочитании клавишь (т.е. с
использованием CTRL, ALT или SHIFT), конструкции типа
 PostMessage(wnd1,WM_KEYDOWN,VK_MENU,0);
 PostMessage(wnd1,WM_KEYDOWN,key,0);
 PostMessage(wnd1,WM_KEYUP,key,0);
 PostMessage(wnd1,WM_KEYUP,VK_MENU,0);
не работают, так что хотелось бы узнать, можно ли в 1 WM отослать и
состояние этих клавишь.


Ответить.


Попробуй так:


Вопрос 676:
От: leader

Есть DOS-программа (EXE-файл без исходников), которая работает в окне и
в процессе работы добавляет текстовые строки в файл.
Можно ли эти строки получать в свое приложение без формирования файла и
как это сделать?
Подозреваю, что решение следует искать в области создания своей консоли.
Однако, вследствие незнания "кишок" Windows, добиться результата я не
смог, а время поджимает.


Ответить.


Попробуй так:


Вопрос 677:
От: Alexandr Gratchenko

С компонентом MaskEdit.
Для ввода чисел до 5 знаков использую маску '99999;0;_'
Но при работе эта маска пропускает не только цифры, но и пробелы, если
перемещаться по полю клавишами со стрелками.
Может кто-нибудь знает как побороть этот глюк?
Soft Delphi 5.0


Ответить.


Попробуй так:


Вопрос 678:
От: Maria Zimakova

У меня возникла проблема с доступом к хранимым процедурам Oracle 8i.
Подскажите, пожалуйста, с помощью какого компонента (типа StoredProc)
это
лучше делать. Где можно его можно найти и чуть подробнее  - как
работать.


Ответить.


Попробуй так:


Вопрос 679:
От: Dr.Shadow[X-RayS]

Помогите, очень хочу работать с любым (Win32 и Real Dos Mode)
консольным приложением из Delphi, т.е. ввод в консольное окно и
копирование(сохранение) консольного окна. Помогите, очень прошу - пишу
GUI-интерфейс на Delphi для Dos-программы. Заранее спасибо.


Ответить.


Попробуй так:


Вопрос 680:
От: Изотко Сергей

Как сделать так, чтобы при внесении изменений в ListBox
 каждую
секунду он не мерцал. Для внесения изменений я использую
 Timer.


Ответить.


Попробуй так:


Вопрос 681:
От: vas

Уважаемые господа не подскажет ли кто нибудь
     относительно использования параметров в подзапросах SQL, а то я
     когда явно в подзапросе указываю число все работает, а когда
     пытаюсь передать это чило ч/з параметр выдается сообщение об
     ошибке "Coud not find object" - "Не могу найти объект.
     В чем дело ?
     Второй вопрос у меня более общий. Подскажите пожалуйста как
     соединиться с сервером Oracle.
     Нужно ли устанавливать дополнительные драйвера ?
     Как настроить псевдоним ?
     Нет ли где нибудь специальных компонентов для соединения и если
     есть то где их взять ?


Ответить.


Попробуй так:



* В БАЗУ OFFLine * * ВСЕ ВОПРОСЫ * * СПРОСИТЬ * * ПРЕДЛОЖИТЬ * * АРХИВЫ * * СКОЛЬКО НАС *

2. Отвеченные вопросы.

Вопрос 655:
От: Олег Е. Гончаренко

Вывожу данные из БД в документ ворд,
строка с разделителями. Потом этот абзац
конвертирую в таблицу, но таблица без линий
сетки, без обрамлений. Пробовал использовать
wdTableFormatList, но сетка не нарисовалась...
КАК обрамлять таблицу? Поиск в хелпах и факах
не помог.....
вот кусок кода, который я использую:
 .........................
Separator:='@';
NumColumns:=3;
formas := wdTableFormatList7;
Bordur := 2;
MyRange.ConvertToTable(Separator,EmptyParam,NumColumns,EmptyParam,
Formas,Bordur,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam);
Tabl:=Form2.WordDocument1.Range.Tables.Item(1);
Tabl.Columns.Item(1).SetWidth(25,wdAdjustNone);
Tabl.Columns.Item(2).SetWidth(200,wdAdjustNone);
Tabl.Columns.Item(3).SetWidth(200,wdAdjustNone);
 ..........................

Ответить.

Попробуй так:
Const wdTableFormatNone = 0; wdTableFormatGrid1 = 16;
wdTableFormatGrid2 = 17; wdTableFormatGrid3 = 18; {Все эти константы взяты из файла Word95.pas, который был получен при импорте соответствующей библиотеки .tlb. Это описано в демонстрашках Delphi} begin ..................... ...................... Tabl.Autoformat(wdTableFormatGrid1); {Tabl - взят из Вашего куска кода} ...................... ....................... end; Попробуй так:
А в ворде макрос писать не пробовал ? Попробуй так:
ИМХО ты все делаешь правильно, вот кусок моей программы, он эдентичен, но работает(попробуй поменять форматы, может твоя версия Word-a что-то не понимает: //~~~~~~~~~~~~~~~~~~~~~~~ преобразование в таблицу Separator:=wdSeparateByCommas; NumRows:=FirstParam; NumColumns:=3; Format:=wdTableFormatClassic1; ApplyBorders:=True; ApplyShading:=True; ApplyFont:=True; ApplyColor:=True; ApplyHeadingRows:=True; ApplyLastRow:=False; ApplyFirstColumn:=True; ApplyLastColumn:=false; AutoFit:=True; Olevariant(fWordApp).Selection.ConvertToTable(Separator,NumRows,NumColumns, EmptyParam,Format,ApplyBorders, ApplyShading, ApplyFont, ApplyColor, ApplyHeadingRows,ApplyLastRow, ApplyFirstColumn, ApplyLastColumn,autofit); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Вопрос 656:
От: Talis

Подскажите, пожалуйста, как перехватывать такие ошибки при работе с
дискетой,как установленная защита от записи (сдвинута шторка) и
неформатированная дискета(если второе - то же самое, что и отсутствие
дискеты в дисководе, то это я обрабатывать умею). Заранее спасибо.

Ответить.

Попробуй так:
Для начала почитай функцию CreateFile и как ей можно открыть
устройтво на чтение/запись. А так же функцию GetLastError. Попробуй так:


Вопрос 657:
От: Yan

Можно ли программно изменить langdriver в парадоксовской базе данных,
написанной еще под MS-DOS? Искал среди API-шных функций для BDE, но
ничего путного не накопал.

Ответить.

Попробуй так:


Вопрос 658:
От: Жулий Андрей Владимирович

Народ у кого нибудь есть зарегистрированный CryptLib 2.4 ?

Ответить.

Попробуй так:


Вопрос 659:
От: MainStream

Вопрос: как получить строку описания программы/файла (то, которое
отображается в свойствах файла и которое мы, по сути, назначаем в
Version
Info)

Ответить.

Попробуй так:
Не помню, откуда я это взял :-( {-$DEFINE DELPHI_4}
{NOTE: Remove "-" from previous line if you are using DELPHI 4 and above} unit VerView; interface uses Classes, StdCtrls; const // Version keys description vsCompanyName = 'CompanyName'; vsFileDescription = 'FileDescription'; vsInternalName = 'InternalName'; vsLegalCopyright = 'LegalCopyright'; vsLegalTrademarks = 'LegalTrademarks'; vsOriginalFilename = 'OriginalFilename'; vsProductName = 'ProductName'; vsComments = 'Comments'; type // Fixed File Information in Version section TVS_FIXEDFILEINFO = record dwSignature : longint; dwStrucVersion : longint; dwFileVersionMS : longint; dwFileVersionLS : longint; dwFileFlagsMask : longint; dwFileFlags : longint; dwFileOS : longint; dwFileType : longint; dwFileSubtype : longint; dwFileDateMS : longint; dwFileDateLS : longint; end; TInfoCategory = (icVersion, icShortVersion, icCompanyName, icFileDescription, icInternalName, icLegalCopyright, icLegalTrademarks, icOriginalFilename, icProductName, icComments); // Version string viewer class definition TVersionView = class(TLabel) private { Private declarations } FVersionText : string; FInfoCategory: TInfoCategory; procedure GetPrgInfo(AKey : string); procedure GetPrgVer(AShort: boolean); protected { Protected declarations } function GetLabelText: string; override; procedure SetName(const NewName: TComponentName); override; public { Public declarations } published { Published declarations } property InfoCategory :TInfoCategory read FInfoCategory write FInfoCategory; end; function GetVersionDigits(const AShort: boolean): string; // Get version number from Version Inf. part of your Delphi program. function GetVersionString(const AKey : string): string; // Get ofter Viersion Inf. strings ... implementation uses Windows, SysUtils, Forms, Dialogs; var VerInfoPresent : boolean; Buf : pointer; Sz : word; function TextConcate(S1, S2 : string): string; begin Result := S1; if S2 = '' then exit; if S1 = '' then Result := S2 else Result := S1+' '+S2; end; function SwapLong(L : longint): longint; assembler; asm rol eax, 16; end; procedure TVersionView.SetName; begin inherited; Invalidate; // Needed for changing component Name at Disign time end; procedure TVersionView.GetPrgInfo; begin FVersionText := TextConcate(Caption, GetVersionString(AKey)); end; procedure TVersionView.GetPrgVer; begin FVersionText := TextConcate(Caption, GetVersionDigits(AShort)); end; function TVersionView.GetLabelText: string; begin if not (csDesigning in ComponentState) then begin case FInfoCategory of icVersion : GetPrgVer(false); icShortVersion : GetPrgVer(true); icCompanyName : GetPrgInfo(vsCompanyName); icFileDescription : GetPrgInfo(vsFileDescription); icInternalName : GetPrgInfo(vsInternalName); icLegalCopyright : GetPrgInfo(vsLegalCopyright); icLegalTrademarks : GetPrgInfo(vsLegalTrademarks); icOriginalFilename : GetPrgInfo(vsOriginalFilename); icProductName : GetPrgInfo(vsProductName); icComments : GetPrgInfo(vsComments); end; { CASE } GetLabelText := FVersionText; end else GetLabelText := Name; end; // ----------------------------------------------------------- // Main version control functions function GetVersionString; var zKeyPath : array[0..255] of char; P : pointer; {$IFDEF DELPHI_4} Len : cardinal; {$ELSE} Len : integer; {$ENDIF} Language : string; begin Result := 'Unknown'; if not VerInfoPresent then Exit; if VerQueryValue(Buf, StrPCopy(zKeyPath, '\\VarFileInfo\\Translation'), P, Len) then Language := format('%.8x', [SwapLong(Longint(P^))]); if VerQueryValue(Buf, StrPCopy(zKeyPath, '\\StringFileInfo\\'+Language+'\\'+AKey), P, Len) then Result := StrPas(PChar(P)); end; function GetVersionDigits; type PVerInfo = ^TVS_FIXEDFILEINFO; var zKeyPath : array[0..255] of Char; {$IFDEF DELPHI_4} Len : cardinal; {$ELSE} Len : integer; {$ENDIF} VerInfo : PVerInfo; begin Result := 'Unknown'; if not VerInfoPresent then Exit; if VerQueryValue(Buf, StrPCopy(zKeyPath, '\'), pointer(VerInfo), Len) then begin if not AShort then Result := IntToStr(HIWORD(VerInfo.dwFileVersionMS))+'.'+ IntToStr(LOWORD(VerInfo.dwFileVersionMS))+'.'+ IntToStr(HIWORD(VerInfo.dwFileVersionLS))+'.'+ IntToStr(LOWORD(VerInfo.dwFileVersionLS)) else Result := IntToStr(HIWORD(VerInfo.dwFileVersionMS))+'.'+ IntToStr(LOWORD(VerInfo.dwFileVersionMS)); end; end; var zSelfPath : array[0..255] of char; {$IFDEF DELPHI_4} L : cardinal; {$ELSE} L : integer; {$ENDIF} initialization begin VerInfoPresent := false; Sz := GetFileVersionInfoSize(StrPCopy(zSelfPath, ParamStr(0)), L); GetMem(Buf, Sz); if (Sz > 0) and GetFileVersionInfo(StrPCopy(zSelfPath, ParamStr(0)), 0, Sz, Buf) then VerInfoPresent := true; end; finalization begin FreeMem(Buf, Sz); end; end. Попробуй так:
В RXLib есть модуль "Versions" (или что-то похожее, точно не помню). Там есть все функции по чтению любого раздела этой информации. Если надо могу прислать весь модуль.


Вопрос 660:
От: Hidden

Можно ли каким-либо образом скрыть программу, написанную на Delphi, от
диспетчера задач в NT. Либо сделать так, чтобы она хотя бы не убивалась
им.

Ответить.

Попробуй так:
Пиши сервисы. Попробуй так:
Запустить ее как системный сервис при
загрузке, иначе по-моему никак. Попробуй так:
Насчет "скрыть": сомневаюсь, что это возможно в NT/2000. А если необходимо не позволить ее закрыть, то можно запустить ее как службу (правда, она и тогда может быть остановлена - но, по-моему, только администратором). Кроме того, никто не запрещает выполнит известный фокус: в обработчике закрытия программы запустить ее еще один раз, или же параллельную программу, осуществляющую запуск вашей по таймеру


Вопрос 661:
От: Kir

Есть две таблицы в Paradox-е, связанные полем просмотра. Как упорядочить
главную таблицу по значению Lookup поля?

Ответить.

Попробуй так:
Вначале осознай что ты сказал. Упорядочить можно только в Asc
ending и Descinding порядке и для этого используются индексы (можно создавать динимически).


Вопрос 662:
От: Karen

Каким образом осуществляется ввод\вывод через последовательные порты в
Windows98 ?
Если не трудно, укажите, пожалуйста, пример какой-нть программы по
теме(для COM2, предположим)...

Ответить.

Попробуй так:
Многократно задаваемый уже вопрос. Закажите все вопросы и най
дете исчерпывающую информацию. Например есть такая вещь как Async Pro . Попробуй так:
Зайди на www.torry.ru там с десяток компонентов лежит для твоих целей. А так пользуте функцию CreateFile для получения доступа к портам. Попробуй так:


Вопрос 663:
От: VJ

Может кто-то встречал алгоритм принудительного высвобождения данных
из оперативной памяти в файл подкачки? Конечно, можно, воспользоваться
наподобие
var
  size: cardinal;
  temp: pchar;
begin
  size:=2000000 {объем для освобождения}
  temp:=AllocMem(size);
  FreeMem(temp);
end;
но такой метод достаточно грубый.

Ответить.

Попробуй так:


Вопрос 664:
От: moslit@mail.kz

Помогите не могу настроить компоненту FastReport для Delphi6. В пятой
версии все нормально. Если возможно дайте рекомендации или
какие-нибудь ссылки:

Ответить.

Попробуй так:


Вопрос 665:
От: Alexander Prishchepa

У меня вот какой вопрос:
Как сделать, чтобы форма программы была все время поверх ТОЛЬКО главного
окна программы. Что-то типа плавающих панелей, только форма.

Ответить.

Попробуй так:
А если ее сделать MDI?


Вопрос 666:
От: Dmitriy Kuryshev

Есть таблица с полями 1..31, где 1..31 - числа ммесяца, в этих полях
записано по одномy
символy: А,Б,В,... Как посчитать, сколько каждого символа?
Пpобовал так:
procedure TForm1.Button2Click(Sender: TObject);
var n,a,b,o:integer;
begin
a:=0;b:=0;o:=0;
while not(ApolloTable1.Eof) do
 begin
   for n:=5 to ApolloTable1.FieldCount-1 do
    begin
     case ApolloTable1.Fields[n].AsString of
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Здесь ошибка Ordinal type
required
      'Б': b:=b+1;
      'О': o:=o+1;
      'А': a:=a+1;
      ^^^^^^^ Hа все 3 действия ошибка Incompatible types: 'Integer' and
'Char'
     end;
    end;
  ApolloTable1['counta']:=a;
  ApolloTable1['countb']:=b;
  ApolloTable1['counto']:=o;
  ApolloTable1.Next;
 end;
end;
Подскажите, что не веpно?

Ответить.

Попробуй так:
Вместо case ApolloTable1.Fields[n].AsString Истользуйте
case ApolloTable1.Fields[n].AsString[1] и ошибки не возникнет Попробуй так:
Здесь у тебя ошибка - в конструкции case of используется выражение порядкового типа, например char. String таковым не является: Попробуй вырежи из своей переменной символ - ApolloTable1.Fields[n].AsString[1] и его и подставь в case, тогда компиляция пройдет нормально. Попробуй так:
Во первых переведи ошибку: Требуется перечислимый тип. Что это значит - а только лишь то, что аргументом оператора case может быть только перечислимый тип (byte, integer, char, sets и другие (Те типы, значения которых можно перечислить)). Тип string не является перечеслимым (т.к. практически невозможно перечислить все возможные строки). Поэтому я бы тебе посоветовал сделать так: case ApolloTable1.Fields[n].AsString[1] of А это уже тип char :) Но конечно очень удивительно устроена сама таблица... На будущее - растить таблицу надо "вниз", а не "вправо". Т.е. оперировать записями, а не полями. Попробуй так:
case ApolloTable1.Fields[n].AsString of Нельзя тип "String" использовать в Case. Переиначте как: s:=ApolloTable1.Fields[n].AsString+' '; case s[1] of



* В БАЗУ OFFLine * * ВСЕ ВОПРОСЫ * * СПРОСИТЬ * * ПРЕДЛОЖИТЬ * * АРХИВЫ * * СКОЛЬКО НАС *



3. Наша база OFFLine взаимопомощи.
Что на сегодня у нас имеется :
Документы Компоненты Программы Проекты
1. От Валентина Озерова
2. 32 Урока По Делфи4
3. Непрямоугольные формы
4. CGI на Делфи
5. Справочник по Делфи5
6. От Олега Малышева
7. Перекодировки
8. WinApi
9. От Алексея Малинина

1. RX6
2. Выполнение Матем Выражений
3. Управление DOS окнами


1. Текст под Углом
2. Управляем WinAmp
3. Печать Графики

А ты уже поделился с товарищами чем-нибудь интересным?
В базу OFFLine
Если хотите что-то заказать то пошлите по почте этот запрос , а после двоеточия поставьте две цифры разделенных тире(минус), например : ':2,1' - это значит, что вы хотите заказать из второй колонки(Компоненты) первый элемент.
Есть небольшое ограничение - в одном письме можно запросить только что-то одно (обрабатывается только первая строка тела письма)!


Если Вы хотите как можно скорее получить ответ на свой вопрос, то
укажите в теме письма - delphiV,иначе письмо будет прочитано значительно
позже, если же у вас есть предложения то в теме письма укажите delphiP.

Для интересующихся - немного о себе. Работаю на
железнодорожном транспорте ведущим программистом.
Основные мои разработки - это сбор и доставка клиентам
информации о вагонах и поездах: где находится(по России),
куда едет. В связи с этим программировал для e-mail,Socket,БД,ISAPI.

За сим прощаюсь - скорых Вам и качественных программ.

Автор рассылки - Дмитрий.
ICQ - 89533941.

* В БАЗУ OFFLine * * ВСЕ ВОПРОСЫ * * СПРОСИТЬ * * ПРЕДЛОЖИТЬ * * АРХИВЫ * * СКОЛЬКО НАС *



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное