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

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

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

ShIvADeSt (22-03-2007 02:18): http://forum.ru-board.com/topic.cgi?forum=33&topic=8142  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение темы http://forum.ru-board.com/topic.cgi?forum=33&topic=3647&start=2020#lt
Внимание, все большие куски кода (более 5 строк) оформляем в тег [more] дабы уменьшить размер поста.

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:52 20-04-2006 | Исправлено: ShIvADeSt, 02:02 30-06-2006
OrlangurStep



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FireZone
Юнит правильный, просто этот проект компилировать не надо. А за совет почитать инструкцию из поставки KOL MSK респект.

Всего записей: 1392 | Зарегистр. 08-04-2006 | Отправлено: 08:17 22-05-2006
pavel chistyakov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите каким образом мне получить и изменить информацию о существующих правах на каталог на разделе NTFS (Надо считывать и изменять права групам пользователей).
 
Delphi - bds 2006.
 

Всего записей: 37 | Зарегистр. 14-12-2005 | Отправлено: 11:53 22-05-2006
OdesitVadim



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SERGE_BLIZNUK
А случайно не с под сервиса поиск происходит? Дело в том, что если это сервис, то ему просто так доступ в сеть запрещён. Эго необхдимо запускать с правами пользователя, который имеет туда доступ.

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

Всего записей: 1568 | Зарегистр. 19-09-2003 | Отправлено: 11:56 22-05-2006
pavel chistyakov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Дано:  Delphi 6, Fastreport 3, MS SQL 2000.
 
TADOQuery выполняет хранимую процедуру на сервере MS SQL2000.
Эта процедура возвращает несколько наборов данных - рекордсетов.  
По этим рекордсетам надо построить отчет, используя FR 3. В дизайнере Fastreport показывает только первый набор данных. Как получить доступ ко всем рекордсетам?
 
 
 
Может кто поделится frxADOStroeProc - если такая существует.

Всего записей: 37 | Зарегистр. 14-12-2005 | Отправлено: 12:00 22-05-2006
reenoip



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Будьте добры, помогите разобраться.
Мне нужно сохранить файл 1.bmp в поле "bitmap" файла base.mdb таким образом, чтобы при создании любой новой записи в таблице, файл автоматически в неё копировал/вставлял себя. Т.е. сейчас нужно сохранить этот рисунок в первую запись (или присвоить полю "bitmap"), и, чтобы больше туда не лезть, автоматизировать этот процесс.
Такое возможно?
Спасибо.
 
 
----------
 
И ещё:  

Код:
TBLOBField(Form1.ADOTable1.FieldByName('name')).LoadFromFile('C:\1.xls');

... когда сохраняю экселевский файл в таблицу таким образом, то при последующей выгрузке его из этого поля  

Код:
TBLOBField(Form1.ADOTable1.FieldByName('name')).SaveToFile('C:\2.xls');

получаю испорченный файл (кубики, кракозябры, и прочий мусор).
 
//поле 'name' - поле объекта OLE
 
 
Как избавиться?

Всего записей: 1768 | Зарегистр. 10-03-2006 | Отправлено: 13:16 22-05-2006 | Исправлено: reenoip, 14:05 22-05-2006
dyr farot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1 -- чтобы само копировалось -- не получится, но можно в разы уменьшить затраты времени -- держать таблицу изображений и вместо картинки вставлять id из этой таблицы
 
2 -- используй BlobStream

Всего записей: 697 | Зарегистр. 03-08-2004 | Отправлено: 14:24 22-05-2006
reenoip



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dyr farot, а можно пример для моего случая?
Открыл справку, нашёл
Код:
var
  Stream1, Stream2 : TStream;
begin
  Stream1 := SQLDataSet1.CreateBlobStream(SQLDataSet1.FieldByName('Notes', bmRead);
  try
    ClientDataSet1.Edit;
    Stream2 := ClientDataSet1.CreateBlobStream(ClientDataSet1.FieldByName('Remarks'), bmReadWrite);
    try
      Stream2.CopyFrom(Stream1, Stream1.Size);
      ClientDataSet1.Post;
    finally
      Stream2.Free;
    end;
  finally
    Stream1.Free;
  end;

.. но разобраться не могу.
переделал "под себя":
 

Код:
var
  xls: TStream;
begin
  xls:=Form1.ADOTable1.CreateBlobStream(Form1.ADOTable1.FieldByName('name', bmRead);

, а дальше что?
По идее, мне полученный stream нужно скинуть в свой приёмник, который может читать *xls...

Всего записей: 1768 | Зарегистр. 10-03-2006 | Отправлено: 14:50 22-05-2006
FireZone

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

Цитата:
а дальше что?
Сохранить в файл можно так

Код:
with TFileStream.Create('C:\2.xls', fmCreate) do
try
  CopyFrom(xls, 0)
finally
  Free
end

 
Добавлено:

Цитата:
По идее, мне полученный stream нужно скинуть в свой приёмник, который может читать *xls...
Ну дык возьми и загрузи в приёмник данные из стрима xls. Если твой приёмник не умеет читать из стрима, перекидывай данные вручную, либо приведи их к тому виду, который понимает приёмник. Ты ведь не написал, какой интерфейс у приёмника.

Всего записей: 293 | Зарегистр. 28-01-2004 | Отправлено: 16:04 22-05-2006
reenoip



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну, вот, нашёл нечто похожее... Посмотрим теперь, кто кого... Я IDE, или она меня...

Всего записей: 1768 | Зарегистр. 10-03-2006 | Отправлено: 18:03 22-05-2006 | Исправлено: reenoip, 18:41 22-05-2006
SERGE_BLIZNUK

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

Цитата:
 случайно не с под сервиса поиск происходит

нет... обычная GUI-шная программа...
Ребята, всем приношу свои глубочайшие извинения! Бес попутал... В тестовой строке пропустил имя шары (как мог - НЕ ЗНАЮ... и вроде трезвый был ;-)))
Перелопал кучу интернета, вас напряг... А сегодня с утра попробовал и всё получилось.
И FindFirst/FindNext работают... И FileExists...
Так что - проблема решена (точнее её и не было...)

Всего записей: 2014 | Зарегистр. 12-09-2002 | Отправлено: 18:44 22-05-2006
FireZone

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

Код:
var  
  Stream1: TStream;  
begin  
  Stream1 := Form1.ADOTable1.CreateBlobStream(Form1.ADOTable1.FieldByName('name'), bmRead);  
  try  
 
    {здесь файлстрим создается, выкачивает данные из Stream1 (данные ложатся прямо в файл) Затем файлстрим убивается}
    with TFileStream.Create('C:\2.xls', fmCreate) do  
    try  
      CopyFrom(Stream1, 0)  
    finally  
      Free  
    end
 
  finally  
    Stream1.Free  
  end
end;

Всего записей: 293 | Зарегистр. 28-01-2004 | Отправлено: 18:56 22-05-2006 | Исправлено: FireZone, 19:00 22-05-2006
Farkhad



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеется массив population. Необходимо получить массив pairs, который того же типа что и population, но в нем элементы должны быть расфасованы случайно на основе массива population.
 
Пример:
population[0] = 1;
population[1] = 5;
population[2] = 153;
population[3] = 12;
 

Код:
    
pairs = getPairs(population);
 

 
pairs[0] = 5;
pairs[1] = 1;
pairs[2] = 153;
pairs[3] = 12;
 
Ф-ия getPairs вызывается в цикле, поэтому крайне важно чтобы массив pairs отличался от массива pairs на предыдущем шаге цикла.
 
Спасибо  

Всего записей: 731 | Зарегистр. 03-08-2001 | Отправлено: 21:22 22-05-2006
reenoip



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну, что, господа кодеры... Проблема решилась самым дурацким способом, как обычно. Всё обошлось обычным TStream. Пипец... Целый день ходил вокруг да около, а цель была так близко...
 
 
Все спасибо большое за советы!

Всего записей: 1768 | Зарегистр. 10-03-2006 | Отправлено: 22:18 22-05-2006
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста, как присвоить переменной типа string содержимое текстового файла.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 10:57 23-05-2006
Butcher



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Vitus_Bering
var S: string; List: TStringList;
List:= TStringList.Create;
try
  List.LoadFromFile(FileName);
  S:= List.Text;
finally
  List.Free;
end;

Всего записей: 41 | Зарегистр. 12-02-2003 | Отправлено: 11:01 23-05-2006
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Butcher
Большое Спасибо.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 11:14 23-05-2006
FireZone

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vitus_Bering
Я делал так. Работает быстрее.
Код:
procedure FileToStr(const FileName: String; var S: String);
var
  f: File;
begin
  AssignFile(f, FileName);
  reset(f, 1);
  try
    SetLength(S, System.FileSize(f));
    BlockRead(f, s[1], Length(s));
  finally
    CloseFile(f)
  end
end;
 
procedure StrToFile(const S: String; const FileName: String);
var
  f: File;
begin
  AssignFile(f, FileName);
  rewrite(f, 1);
  try
    BlockWrite(f, S[1], Length(s))
  finally
    CloseFile(f)
  end
end;

Всего записей: 293 | Зарегистр. 28-01-2004 | Отправлено: 15:19 23-05-2006
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FireZone
Благодарю за помощь.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 16:21 23-05-2006
Betorgon



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

Всего записей: 272 | Зарегистр. 19-05-2006 | Отправлено: 17:42 23-05-2006
dyr farot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://forum.vingrad.ru/index.php?showtopic=96010

Всего записей: 697 | Зарегистр. 03-08-2004 | Отправлено: 18:29 23-05-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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi 2
ShIvADeSt (22-03-2007 02:18): http://forum.ru-board.com/topic.cgi?forum=33&topic=8142


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru