Форум: "Прочее";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Вниз
API Найти похожие ветки
← →
Игорь Н (2006-04-25 11:55) [0]Помогите, пожалуйста, мне нужно, чтобы программа открылась в моей форме. В примере, который прилагается к письму, программы открываются, но не все как бы хотелось. Что нужно добавить или исправить, чтобы программа работала?
Единственный вариант в этом случае, если в форме открывать все окна, вместе с рабочим столом, то все прекрасно, но меня это не устраивает. Мне нужно только конкретную программу открыть. И почему-то сопротивляются только программы, написанные на Delphi, может быть, что-то связано с классом или с параметрами или это не так?
Помогите, пожалуйста.
С уважением Некрасов Игорь Юрьевич.
function EnumWindowsProc(h: hwnd; lparam:Integer): BOOL; stdcall;
begin
h:=FindWindow(nil,"Ttm5");
if IsWindowVisible(h) then
SetParent(h,Form1.Handle);
Result:=true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
{WinExec(PChar("Ttm5.exe"),SW_ShowNormal); }
EnumWindows(@EnumWindowsProc, 0);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
WinExec(PChar("Ttm5.exe"),SW_ShowNormal);
end;
← →
Сергей М. © (2006-04-25 13:34) [1]
> В примере, который прилагается к письму
Что за письмо-то ?
Кто кому писал ? Казаки турецкому султану ?
> нужно, чтобы программа открылась в моей форме
Невозможно по определению.
> function EnumWindowsProc(h: hwnd; lparam:Integer): BOOL;
> stdcall;
> begin
> h:=FindWindow(nil,"Ttm5");
> ...
Что за ерунду ты здесь пишешь ?
Система в очередной раз вызвала колбэк-функцию, передав тебе параметром h хэндл очередного перечисляемого ею по твоему требованию top-level-окна (существующего !).
Зачем же ты игнорируешь значение параметра h и тут же гадишь его ?
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.018 c