Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi

Модерирует : ShIvADeSt

ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

   

vunder



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pinocchio
проблема в том, что я вообще не могу выполнить никакую команду. Вопрос в том, как это можно сделать, а с получением результата я сам разберусь

Всего записей: 46 | Зарегистр. 28-10-2004 | Отправлено: 19:31 29-12-2005
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vunder

Цитата:
проблема в том, что я вообще не могу выполнить никакую команду. Вопрос в том, как это можно сделать, а с получением результата я сам разберусь

Однако это уже FAQ с длинной бородой, вот тебе на выбор ShellExecute, CreateProcess, WinExec.


----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:08 30-12-2005
isem



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите решить проблему!
есть таблица с неограниченым количеством строк и столбцов, нужно найти и удалить все одинаковые строки.
таблица xml писана на делфи.

Всего записей: 81 | Зарегистр. 22-07-2005 | Отправлено: 09:32 30-12-2005
vserd

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
isem

Цитата:
есть таблица с неограниченым количеством строк и столбцов, нужно найти и удалить все одинаковые строки.  

Ну так строй индекс по записям, а потом удаляй дубликаты.

Всего записей: 2065 | Зарегистр. 08-05-2002 | Отправлено: 12:03 30-12-2005
isem



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а как ето сделать? Если можно кусочек кода
огромное человеческое СПАСИБО!!!

Всего записей: 81 | Зарегистр. 22-07-2005 | Отправлено: 17:53 30-12-2005
Viktor_Zh



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос:
Есть лог-файл, который постоянно пишется другой программой. Файл очень большой, может быть 20 Гб. (В память его нельзя грузить).
Как открыть его только для чтения, и считать из него строку, удовлетворяющую какому-либо условию?
Через TextFile(AssignFile, Reset..) не получается, даже если открываю для чтения (FileMode:=fmOpenRead or fmShareDenyNone) - программа, которая пишет лог, вылетает.
Попробовал через потоки - работает, но при этом непонятно, как определить конец строки.
На С++ писал такую пргу через FILE *F, Fopen, строку читал при помощи fgets().
Не могу найти аналог в Дельфе.

Всего записей: 165 | Зарегистр. 09-12-2005 | Отправлено: 15:12 06-01-2006
MrZeRo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Viktor_Zh

Цитата:
Попробовал через потоки - работает, но при этом непонятно, как определить конец строки.

Если работает через потоки (я так понял, имеется в виду разновидности TStream),
можно использовать TStringStream для чтения. Или посмотреть в его реализации (модуль Classes.pas) кусок кода для определения конца строки, так будет, наверное, легче, это метод ReadString.


----------
... не это главное ...

Всего записей: 832 | Зарегистр. 30-01-2002 | Отправлено: 16:46 06-01-2006
dyr farot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
stream := TFileStream.Create('file.txt', fmOpenRead or fmShareDenyNone);
и читай или побайтно для символов с кодом 10, 13 или читай буффер и разбирай его

Всего записей: 697 | Зарегистр. 03-08-2004 | Отправлено: 16:51 06-01-2006
Podkrisok

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
За что именно отвечают и какие процедуры содержат встроенные в Delphi модули  TeeProcs и TeeEngine из пакета TeeChart. Они добавляются в раздел Uses при компиляции программы содержащей компонент Chart.  
Мне понятно что они нужны для построения диаграмм и графиков различных видов и форм но хотелось бы узнать более поконкретней. Смотрел в справке по Delphi но ничего конкретного про них не нашел.

Всего записей: 1 | Зарегистр. 08-01-2006 | Отправлено: 01:21 08-01-2006
DenSer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пишу программульку с иконкой в трее на Delphi 7, столкнулся со следующей проблемой: если в трей выводить иконку например из ImageList, то она (иконка) преобразуется из 32-х битной в содержащую всего 256 цветов (если не ошибаюсь, может больше, но точно не 32 бита).
Проблему решил следующим способом: создаю ico-файл содержащий только один формат иконки (16*16, 32 бита), присваиваю эту иконку главной форме и уже в трей вывожу иконку главной формы. Таким образом в трее отображается иконка с необходими мне 32 битами цвета. Но если к примеру нужно чтобы иконка менялась на другую по какому-либо собитию, то чтобы сохранить эти самые 32 бита у второй иконки приходится создавать ещё одну форму (скрытую), присваивать ей иконку подготовленную вышеописанным способом и выводить в трей иконку этой скрытой формы.
Вопрос: есть ли способ сохранить 32-х битный цвет в трее человеческим способом?
Кстати подобный вопрос стоит и по поводу вывода 32-х битных изображений в PopupMenu.
Заранее спасибо!

Всего записей: 258 | Зарегистр. 06-03-2004 | Отправлено: 11:41 10-01-2006
dyr farot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
можно все иконки ресурсами запихнуть и потом LoadImage() вызывать

Всего записей: 697 | Зарегистр. 03-08-2004 | Отправлено: 13:05 10-01-2006
DenSer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dyr farot
спасиб! попробую




подобные сообщения в ПМ.

Всего записей: 258 | Зарегистр. 06-03-2004 | Отправлено: 13:07 10-01-2006 | Исправлено: ShIvADeSt, 02:00 11-01-2006
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DenSer

Цитата:
можно все иконки ресурсами запихнуть и потом LoadImage() вызывать

Самое главное это иконки в ресурсы пихать не стандартным Дельфийским респроводником (он максимум 256 цветов держит) а чем нить типа Restorator (я вообще почти все ресурсы им создаю). Тогда иконка будет иметь столько цветов, сколько надо. Кстати 32 битные иконки только под ХР норм выглядят в трее, все предыдущие оси если не ставить спец либ, их мерзко отображают .

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 02:03 11-01-2006
chaugi



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
 
Есть type pwd = record который имеет n-нное колличество записей.

Цитата:
type password = record
       name: string;
       ...
       end;

Создаётся переменная  

Цитата:
var pwd: password;

Во время использования программы pwd заполняется данными...
 
Скажите как нужно записать, чтобы например при нажатии на кнопку SAVE данные из record сохранились бы в фаил под название "data.dat".
 
Мне нужно так, что
1) если фаил не существует, то создаётся фаил "data.dat" и записывается pwd
2) если фаил есть и в нём есть уже запись с такимже name (pwd.name совпадает) то мы перезаписываем информацию
3) если такой записи в файле нет, то делаем append.
 
З.Ы В Pascale всё было просто. Делалось  

Цитата:
type MyFile = file of password;

а при создании

Цитата:
 
var fff: MyFile;
    assign(fff, 'data.dat');
    {$I-}
    reset(fff);
    {$I+}
 

Примерно так, а в Delphi я ничего не разберу, подскажите пожалуйста.
 
Спасибо.

----------
http://forum.pleasuredome101.com/
http://forums.shareconnector.com/
=> eMule saves us.

Всего записей: 321 | Зарегистр. 16-03-2002 | Отправлено: 16:56 11-01-2006
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
chaugi
Всё почти так, только вместо
Assign -> AssignFile
Close -> CloseFile
Остальное - неизменилось и работает нормально (Только говорят по .NET этот метод работать вроде не будет, не знаю, не проверял)

----------
Press any key to continue or any other key to exit
Пишите так, чтобы не было стыдно за нобелевскую премию.

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 17:34 11-01-2006
chaugi



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OdesitVadim
Куда не вставляй этот type MyFile = file of password; всё время выдёт ошибку.
Насколько я понял строчку надо вставить после основного type, т.е. после end; и пере var   Form1: TForm1;
Если вставить туда, то ошибка такая: Type 'password' needs finalization - not allowed in file type.

Всего записей: 321 | Зарегистр. 16-03-2002 | Отправлено: 18:06 11-01-2006
gpi

Alone Wanderer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
chaugi
Размер записи должен быть задан явно: string[100] и т.д.

Код:
type password = record  
       name: string[100];  
       ...  
       end;  


Всего записей: 432 | Зарегистр. 30-05-2004 | Отправлено: 18:18 11-01-2006
Admin CSB

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gpi

Цитата:
Размер записи должен быть задан явно: string[100] и т.д.

Гм. А в чем отличие string от string[255] в таком случае???


----------
Не горюй, все не так плохо, как кажется... Все гораздо хуже....

Всего записей: 505 | Зарегистр. 23-01-2005 | Отправлено: 20:53 11-01-2006
LordMAD



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Admin CSB

Цитата:
Гм. А в чем отличие string от string[255] в таком случае???  

string[255] - short string
string - long string
Подробнее смотри в справке

Всего записей: 378 | Зарегистр. 01-10-2002 | Отправлено: 21:04 11-01-2006
SergeBS



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Admin CSB
В том, что string - задается ключом компилятора и размер не фиксирован. Запись должна иметь фиксированный размер. Поэтому нужно задавить размер string.

Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 10:28 12-01-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi
ShIvADeSt (20-04-2006 01:53): http://forum.ru-board.com/topic.cgi?forum=33&topic=6679#1


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru