Главная страница
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.051 c
3-1152081248
zorik
2006-07-05 10:34
2006.09.10
Какое событие в TDataLink отвечает за изменение данных


15-1155987073
fast2
2006-08-19 15:31
2006.09.10
Где взять иконку Excel я?


9-1134643594
Рикитикитави
2005-12-15 13:46
2006.09.10
Насчет спрайтов в DelphiX


15-1155342176
belly_tiamat
2006-08-12 04:22
2006.09.10
Протокол HILTI дальномер PD28


15-1155632808
StriderMan
2006-08-15 13:06
2006.09.10
Отличие делфишного CASE от сишного SWITCH