Главная страница
    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.45 MB
Время: 0.039 c
8-1140529733
hh_speed
2006-02-21 16:48
2006.09.10
как узнать частоту кадров у AVI


15-1155899398
Труп Васи Доброго
2006-08-18 15:09
2006.09.10
Пока!


2-1155739609
Sele
2006-08-16 18:46
2006.09.10
обои jpeg


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


15-1155826819
ArtemESC
2006-08-17 19:00
2006.09.10
Забыл...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский