Форум: "Основная";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];
ВнизСтранная вещь! Найти похожие ветки
← →
DiGiTaL (2002-05-04 20:24) [0]Мда... Что-то я от паранормальных явлений стал уставать.. :)
Вообщем дело такое:
Есть у меня все та же иконка в трее... :)
..и есть процедура под названием "Proverka".
Эту процедуру можно запустить 2-мя путями:
1) Щелкнув по иконке левой клавишей мыши. Вот обработчик:
procedure TForm1.TrayClk(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
If Button=mbLeft then Form1.Proverka;
end;
2) Выбрав пункт "Check" в контекстном меню для этой же иконки. Вот обработчик:
procedure TForm1.Check1Click(Sender: TObject);
begin
Form1.Proverka;
end;
Прикол в следующем:
Запускаем прогу под Windows 98.
Если процедуру запускать с помощью контектстного меню - все работает.
Если процедуру запускать с помощью щелчка мыши - внутри процедуры Proverka возникает ошибка класса EOleException (я к Outlook там обращаюсь).
Запускаем прогу под Windows XP.
Если процедуру запускать с помощью контектстного меню - все работает.
Если процедуру запускать с помощью щелчка мыши - все работает.
Я фигею.. :) Каковы ваши мнения?
← →
Song (2002-05-04 20:39) [1]Потому что XP построена на ядре NT и лучше обрабатывает ошибки и исправляет их последствия.
Я ж Вам говорил напишите реализацию TrayIcon сами, не парьтесь.
← →
DiGiTaL (2002-05-04 21:47) [2]Глянул я код по вашей ссылке.
Единственная ошибка:
Procedure TForm1.ControlWindow(Var Msg:TMessage);
Begin
IF WParam=SC_MINIMIZE then <--тут компилятор говорит:
"(" expected but "=" found
где ошибка?
← →
Song (2002-05-04 21:56) [3]Sorry... ;)
IF Msg.WParam=SC_MINIMIZE then ...
← →
DiGiTaL (2002-05-04 22:11) [4]Ok.. :)
Ща заценим, как это работать будет.
← →
DiGiTaL (2002-05-04 23:15) [5]Работает.
Только ShowWindow(Application.Handle,SW_HIDE) не скрывает форму почему-то..
Вместо ShowWindow(Application.Handle,SW_HIDE) и ShowWindow(Application.Handle,SW_SHOWNORMAL) я написал Form1.Visible:=False и Form1.Visible:=True. Это нормально?
Ща попробую это дело вписать в свое приложение.
← →
Song (2002-05-05 11:12) [6]2DiGiTaL (04.05.02 23:15)
Можно и так. Только по-моему читабельней воспользоваться Show и Hide
Попробуйте ShowWindow(Handle,SW_HIDE) без Application. Я просто загнался что-то.
← →
DiGiTaL (2002-05-05 13:06) [7]Угу..
Вообщем дела обстоят так:
В описании к процедуре Ic вы ошиблись с параметром n, там должно быть n - номер операции ( 1 - добавить, 3 - заменить, 2 - удалить). И для щелчка левой клавишей мыши вы не обнуляете сообщение, а для правого обнуляете (это ошибка?).
Ну это все так..
Но главная фигня-то: После того как я это вписал в свое приложение, ничего не изменилось. Все работает по прежнему. :(((
Что еще можете посоветовать?
← →
Song (2002-05-05 13:14) [8]Ага, спасибо, поменял.
И для щелчка левой клавишей мыши вы не обнуляете сообщение, а для правого обнуляете (это ошибка?).
Нет, это не ошибка. По щелчку левой кнопки меню же не всплывает.
Но главная фигня-то: После того как я это вписал в свое приложение, ничего не изменилось. Все работает по прежнему. :(((
Странно конечно. Но на пальцах я ничего сказать не могу. Вышлите мне Ваш код, если хотите. Я гляну.
← →
DiGiTaL (2002-05-05 13:18) [9]Что выслать? Весь код или что-то определенное? Там много..
← →
Song (2002-05-05 18:02) [10]Так чтобы у меня запустилась она и я смог протрассировать место проблемы.
← →
Набережных С. (2002-05-05 18:12) [11]Посмотри почту.
← →
DiGiTaL (2002-05-05 21:30) [12]2Набережных С.:
Спасибо. Компоненту получил, попробовал использовать - непомогло.
2Song:
Свою прогу я тебе выслал. Глянь, если не тяжело.
Да.. Кстати, она использует Outlook2000 или ХР, так что если будешь глядеть - придется поставить.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c