Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Вопросы по Delphi

Автор: Jokerjar
Дата сообщения: 28.03.2006 14:30
Проверяешь дискриптор и посылаешь сообщение не перезагружая страницы? Просто дескриптор всегда разный дается.
Автор: Borodatu
Дата сообщения: 28.03.2006 14:40
Господа, столкнулся с:
Имею TMemо, меняю его цвет, затем делаю Add и текст выводится на исходном фоне, а не на том каторый я выбрал.
?Как сделать чтобы воводился текст на МОЕМ цвете???
Спасибо!
Автор: mutmut
Дата сообщения: 28.03.2006 14:45
Jokerjar
Страницу не перегружаю. Дискриптор окна? Пробовал посылать бродкастом на некоторые другие окна подейстовало. Пробовал fidwindow узнать дискриптор и послать на него. Результата нулевой.
Автор: Jokerjar
Дата сообщения: 28.03.2006 14:47
Попробуй после того как поменял цвет вызвать

Код: Memo1.Update;
Автор: Borodatu
Дата сообщения: 28.03.2006 14:56
Благодарю за хлопоты Jokerjar

Цитата:
Jokerjar

но не рабатает.
Автор: mutmut
Дата сообщения: 28.03.2006 14:57
Jokerjar
На страницу? хм... там регистрироваться надо... ну вот так можешь взглянуть http://zhuki.mail.ru/?fuid=487800. Там на первой карте есть ТУНЕЛЬ нажимаешь. И вот тут надо совершать это таинство
Автор: Jokerjar
Дата сообщения: 28.03.2006 15:13
mutmut, что-то определенно не могу найти, повсюду флэш . Что за карта?
Автор: mutmut
Дата сообщения: 28.03.2006 15:22
Jokerjar
Главная карта где находиться стадион и тд... там есть такая дырка черная тунель. Вот туда надо заходить и вот там уже надо делать клик на банк или стадион. Еще дескриптор по findwidiw и через клик отличается.

Да дело даже не в этом попробуй с эмулировать клик для одной из флешек которую ты видишь.

Или напиши в строке для ввода prv[mutmut] <текст сообщения>
Автор: SmokyLV
Дата сообщения: 28.03.2006 15:58
Люди, помогите кто может. В Делфи 5 не трасируются проэкты dll-ок.
Вроде сделал всё как надо, в Run|Parameters указал Host application. Всё запускается, а брэйкпоинты не отрабатывают, пошаговое выполнение тоже не идёт. На компе также установленна Microsoft Studio .NET, ОС - WindowsXP Professional SP2.
Пробовал дебагить проэкт на других компах, там дебагер нормально отлавливает брэйкпоинты и всё работает как надо.
Автор: vshersh
Дата сообщения: 28.03.2006 16:04
SmokyLV
А Debug Info включен? (+ и т.п.)
Автор: mutmut
Дата сообщения: 28.03.2006 16:18
Jokerjar
Если посылаю бродкастом. И не на флешку, а на обыкновенную ссылку. То работает. Бродкастом на флешку не работает. Где капать?
Автор: SmokyLV
Дата сообщения: 28.03.2006 16:29

Цитата:
А Debug Info включен? (+ и т.п.)


Debug Info (+ и т.п.) включен.
Автор: ShIvADeSt
Дата сообщения: 28.03.2006 23:44
Jokerjar

Цитата:

The timeSetEvent function starts a specified timer event. The multimedia timer runs in its own thread. After the event is activated, it calls the specified callback function.

то есть не таймер в поток, а сразу таймер создавай который имеет собственный поток.SmokyLV

Цитата:
Люди, помогите кто может. В Делфи 5 не трасируются проэкты dll-ок.
Вроде сделал всё как надо, в Run|Parameters указал Host application.

[more]
he following topics cover issues when debugging DLLs.

Specifying the host EXE

When debugging a DLL, you don’t need to add the host .EXE to a project to debug it. You can specify a pathname to the .EXE by selecting Run|Parameters and entering the path to the .EXE in the Host application edit box. Press the Load button to load the .EXE in the debugger.

Using Module load breakpoints when debugging .DLLs

Use Module load breakpoints to halt an application when it loads a specified .DLL. To set a Module load breakpoint either:

Select either Run|Add Breakpoint|Module Load Breakpoint
    Choose View|Debug Windows|Modules to display the Modules window and right-click anywhere in the upper-left pane and select Add Module

Then in the Add Module dialog box, enter the module name of the .DLL or click Browse to find the .DLL. Click OK. When the application loads the specified .DLL, the application will halt.

Setting a debug source path

The debug source path is specified under Project|Options|Directories\Conditionals. Debug source paths for modules in the current project, or project group, are automatically set. If you are debugging modules (EXEs, DLLs) in different projects or projects groups, you need to add the debug source path for each module that is not part of the current project group.

Locating TDS files

TDS files must be in the same directory as the corresponding DLL or EXE.
[/more]
Автор: mutmut
Дата сообщения: 29.03.2006 06:31
Jokerjar
Будут какие-нибуть ещё предложения?
Вот итог:
Дескриптор у самой области отображения и тулбара браузера разные. И не равны дискриптору получаемому по findwindow. Причем клик по дискриптору полученному по findwindow не прокатывает. Клик по дискриптору полученному по клику вроде, что то там делается активным становиться окно браузера, только клика нет. Бродкастом клик прокатывает на обычную ссылку вроде , на флешку нет.
Автор: RostY
Дата сообщения: 29.03.2006 07:45
mutmut
А может декомпилировать флешку и посмотреть чего она делает ?
Автор: mutmut
Дата сообщения: 29.03.2006 08:35
RostY
Подскажи чем можно декомпелировать флешку?

Вопрос снят. Уже нашел.
Автор: mutmut
Дата сообщения: 29.03.2006 15:18
Jokerjar
А если так, я знаю что происходит по клику на область флешки(урл). Как мне теперь посылать это браузеру, что бы он именно из этого фрейма посылал?

Добавлено:
Jokerjar
О чудо вот код.

Код:
sendmessage(4522888, wm_lbuttondown,1,7012637);
sendmessage(4522888, WM_LBUTTONUP,1,7012637);
sendmessage(4522888, wm_lbuttondown,1,7012637);
Автор: ArtemiyUO
Дата сообщения: 30.03.2006 05:01
Кроме титла можно найти нужное окно по имени класса например. Предварительно поизучай окно и вооще приложение с помощью MS Spy++ или WinSight32. посмотри какие окна, какие классы и т.д. А потом уже ищи и отбрасывай не нужное.
Автор: mutmut
Дата сообщения: 30.03.2006 06:00
ArtemiyUO
Пробую сделать вот так:

Код:
wndс:=FindWindowEx(wndparent,null,class name,'Титл');
Автор: ArtemiyUO
Дата сообщения: 30.03.2006 06:24
ну вот как пример код который скрывает "пуск". Тут тебе и получение дискр окна, и получение дочерних его окон, перебор их всех и поиск нужного по имени класса

Код:
procedure StartButton(visi: boolean);
var Tray, Child : hWnd;
C : array [0..127] of char;
S : string;
begin
Tray := FindWindow('Shell_TrayWnd', NIL);
Child := GetWindow(Tray, GW_CHILD);
while Child <> 0 do begin
if GetClassName(Child, C, SizeOf(C)) > 0 then begin
S := StrPAS(C);
if UpperCase(S) = 'BUTTON' then begin
if Visi then
ShowWindow(Child, 1)
else
ShowWindow(Child, 0);
end;
end;
Child := GetWindow(Child, GW_HWNDNEXT);
end;
end;
Автор: mutmut
Дата сообщения: 30.03.2006 08:09
ArtemiyUO
Где же ты раньше то был
ShIvADeSt
Jokerjar
Урааааааа Все заработало. Спасибо огромное за помошь. За ваще терпение и понимание.
Автор: scofer
Дата сообщения: 30.03.2006 08:23
Здравствуйте.
Подскажите, если кто работал с TeeChart Pro.
Делаю простой проект с TeeChart:

...
series1: TContourSeries;
series1 := TContourSeries.Create(Chart1);
Chart1.AddSeries(series1);
...
procedure TForm1.Button1Click(Sender: TObject);
var x,y,z,s:real;
begin
series1.Clear;
//series1.IrregularGrid := True;
s := 1; x := -5;
while x <= 5 do begin
y := -5;
while y <= 5 do begin
z := Sqrt(x*x + y*y);
series1.AddXYZ(x,y,z);
y := y + s;
end;
x := x + s;
end;
series1.AutomaticLevels:=true;
end;

Получаю на графике вместо ожидаемых концентрических окружностей какое-то безобразие ввиде отрезков.
С выставленым IrregularGrid и того не видно.
Может кто знает в чем дело и где прочитать про построение графиков по трем координатам...

Заранее спасибо.
Автор: valerka78
Дата сообщения: 30.03.2006 12:35
Подскажите, плз, как неявно прописывается путь к каталогу, в котором исполняется программа.
Например, при загрузке картинки:
...
MyImg[i+1].Picture.LoadFromFile('epi.JPG');
...
Автор: Schatz
Дата сообщения: 30.03.2006 12:36
День добрый
Пишу библиотеку, в событии инит заполняю масив компанентов типа Таймер:

For i:=0 to 9 do begin
Timer[i]:=TTimer.Create(nil);
Timer[i].Enabled := False;
Timer[i].OnTimer := OnMyTimer;
Timer[i].Tag:=i;
End;

В обработчике события OnMyTimer(Sender: TObject); пишу

TimerNo:=InToStr((Sender as TButton).Tag);
В этой строке возникает ошибка, в параметре Sender находится пустое значение.

Подскажите как правильно передать объект Таймер в обработчик OnMyTimer.

Или как можно передать номер таймера в обработчик OnMyTimer???

Зарание огромное спасибо.
Автор: vshersh
Дата сообщения: 30.03.2006 12:44
Schatz
А чего у тебя преобразование
Код: Sender as TButton
Автор: valerka78
Дата сообщения: 30.03.2006 12:47
Schatz
1. Нет такой функции InToStr есть IntToStr.
2. Код непонятен абсолютно :
Timer[i].OnTimer := OnMyTimer; ??? OnMyTimer(Sender) ???
Автор: Schatz
Дата сообщения: 30.03.2006 12:49
vshersh
Точно, это моя невнимательность, спасибо за помощь.

Прошу прощение за глупый вопрос, просто уже тупить начинаю под конец рабочего дня
Автор: RostY
Дата сообщения: 30.03.2006 13:20
valerka78

MyImg[i+1].Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'epi.JPG');

MyImg[i+1].Picture.LoadFromFile(ExtractFilePath(application.ExeName)+'epi.JPG');

Автор: valerka78
Дата сообщения: 30.03.2006 13:32
RostY
Большое спасибо
Автор: vserd
Дата сообщения: 30.03.2006 13:33
Schatz

Цитата:
OnMyTimer(Sender: TObject); пишу

TimerNo:=InToStr((Sender as TButton).Tag);

Ты хоть понял чего написал?
Почему ты считаешь что Sender это TButton. Мое мнение что это TTimer.
Что происходит по такому коду, размещенного в OnMyTimer:
If Assigned(Sender) then ShowMessage('not Nil') Else ShowMessage('Nil');
If Sender is TTimer then ShowMessage(InToStr((Sender as TTimer).Tag));

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Вероятность одинакового CRC32


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.