Собссно вопрос в сабже...
Хочу сделать простой фронтенд для rdesktop.
Запустить не проблема с TProcess, но у него очень нефункциональное окно. Хочу сделать своё окно и чтобы в нём было окошко rdesktop
Модератор: Модераторы
olegy123 писал(а):ненадо ничего выводить..
надо ликовать либлу, и ловить callback с обновлением картинки, ими перерисовывать свои панельки. одновременно отправлять мышь,клавиатуру..
но для этого нужно знать волшебные функции за это отвечающие.
olegy123 писал(а):есть
http://savannah.nongnu.org/projects/grdesktop
но при первом просмотре вроде он работает через TProcess
olegy123 писал(а):Нашел еще FreeRDP
https://github.com/FreeRDP/FreeRDP
хорошее описание API
http://pub.freerdp.com/api/index.html
даже показан клиент:
https://github.com/FreeRDP/FreeRDP/blob ... /freerdp.c
tema писал(а):Там волшебных функций нет. Я проштудировал этот код. Там именно как TProcess
tema писал(а): Допустим панелька маленькая и я с неё управляю открытием/закрытием этих окошек; могу эту панельку таскать и окошки вслед за ней и т.п.
tema писал(а):По сути выходит, что задача сводится к тому, чтобы отрисовать рамку вокруг окна rdesktop и "приклеить" это окно к перетаскиванию этой рамки, при этом скрыв заголовок окна rdesktop
uses gtk2proc, gtk2extra, ctypes, gtk2;
Function GetXHandle(AWinControl : TWinControl) : culong;
var
Widget: PGtkWidget;
begin
Result:=0;
if (AWinControl=nil) or (not AWinControl.HandleAllocated) then exit;
Widget:={%H-}PGtkWidget(AWinControl.Handle);
if Widget^.window = nil then exit;
Result := gdk_window_xwindow(Widget^.window);
end;
$ man rdesktop
...
-X <windowid>
Embed rdesktop-window in another window. The windowid is expected to be decimal or hexadecimal (prefixed by 0x).
....
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9