Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.10;
Скачать: CL | DM;

Вниз

Контекстное меню Проводника и передача данных   Найти похожие ветки 

 
MikeZ   (2006-05-14 13:25) [0]

Добрый день.

Есть желание вставить свой пункт в контекстное меню. Вставить - вставил (contmenu.dpr в демках). Но возник косяк при передаче даннх: если программа запущена, то данные передаем по WM_COPYDATA и нет проблем. Но если НЕ запущена, то надо ее (программу) запустить и передать строку.  COPYDATA не подходит (некуда пересылать - программа может не быть еще запущена или еще не готова к приему).

Поэтому надо строку (любой длины) поместить в память и передать как параметр адрес памяти (другие варианты типа сохранить в файл и передать имя файла не рассматриваем).

Тут и косяк.
Функции (взял с этого же сайта)
Function StrToMem(Const inStr: String): Integer;
Var
 F, S                        : Integer;
 P                           : PChar;
Begin
 S := Length(inStr);
 GetMem(P, S + 1);
 For F := 0 To S - 1 Do
   P[F] := inStr[F + 1];
 P[S] := #0;
 Result := Integer(P);
End;

Function MemToStr(Const inAddr: Integer): String;
Var
 P                           : PChar;
Begin
 Try
   P := PChar(inAddr);
   Result := P;
 Finally
   If Assigned(P) Then
     Begin
       Freemem(P);
       P := Nil;
     End;
 End;
End;

работают в пределах 1-го приложения.

Хочу попросить помощи в плане переделки их для передачи в другое приложение (даже если первое будет закрыто)

Заранее спасибо!


 
MikeZ   (2006-05-14 20:41) [1]

Опечатка:
"для передачи данных в другое приложение (даже если первое будет закрыто)
:)


 
Slym ©   (2006-05-15 06:31) [2]

Создай COM объект и не парься система сама запустит если не запущено и сообщений не надо



Страницы: 1 вся ветка

Текущий архив: 2006.09.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
15-1155735870
StriderMan
2006-08-16 17:44
2006.09.10
Windows Vista


2-1156046178
Vasiliy
2006-08-20 07:56
2006.09.10
Как осуществить прокрутку в ScrollBox?


15-1155485344
Карелин Артем
2006-08-13 20:09
2006.09.10
Интуиция. Ну нет в ней логики. А чем она вызвана?


2-1155835932
Alral
2006-08-17 21:32
2006.09.10
Коды клавиш.


15-1155885857
tesseract
2006-08-18 11:24
2006.09.10
До выхода turbo delphi осталось :