Уважаемый форумчане, выручайте.
Есть программа, что то типа чата, только одностороннего. Есть клиент есть сервер. На сервере при нажатии на кнопку происходит отправка сообщения (допустим слова "привет"). У клиента в поле допустим Edit выводится слово "Привет". То есть тупо пересылка заранее созданных сообщений.
Надо сделать так чтобы это сообщение (то что выводится в Edit) появлялось поверх игры и висело там пока не изменится. Т.е. производится хук DirectX и вывод тексте через него.
Программа которая Хукает DirectX и инжектирует библиотеку которая будет выводить текст у меня есть, она отлично работает. Но она выводит текст которые заранее записан в библиотеки. Надо как то чтобы вместо заранее записано слова выводилось слово из Едит. Я понимаю что надо вместо:
Код:
g_Font.DrawTextA(nil,PChar('Привет'),-1, @TextRect,.....
сделать что-нибудь типа:
Код
Код:
TEXT:=Edit1.Text;
g_Font.DrawTextA(nil,PChar(TEXT),-1, @TextRect,.....
Но как переменную с формы передавать в библиотеку не могу понять.
Я добавлял в библиотеку
Код:
uses Unit1;
.....
var
TEXT:string;
....
TEXT:=Unit1.Form1.Edit1.Text //(или так Form1.Edit1.Text)
Программа компилируется. Я ее запускаю, но как только игра запускается, она (игра) сразу выдает ошибку и свойствах ошибки пишет что найдена ошибка в моей библиотеке. Подскажи пожайлусто как быть?
Выкладываю исходники библиотеки и инжектора.
Буду очень признателен.