Страница: 1 |
Страница: 1 |
Вопрос: Удаленный набор текста
Добавлено: 26.06.05 00:00
Автор вопроса:
ArtBase | ICQ: 55593017
Работаем с винсоком. Есть клиент с кодом:
Private Sub Text3_Change() 'обратите внимание на способ отправки
sckClient.SendData Text3.Text
End Sub
На сервере (при открытом блокноте):
Private Sub sckServer_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
sckServer.GetData strData
SendKeys strData 'передаем текст от клиента в активное окно, т.е. Блокноту.
End Sub
На удаленном компе в блокноте пишется то, что я набираю в клиенте. Хочу, чтоб в блокноте набирался символ, который я в клиенте набираю. Короче, более понятным языком: хочу чтобы "сервер" видел у себя в блокноте, как "клиент" набирает текст.
p.s. Как заставить окно по определенному названию быть поверх окон?
Ответы
Всего ответов: 11
Номер ответа: 1
Автор ответа: Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #1
Добавлено: 26.06.05 00:49
Пересылать можно побуквенно, на каждый Text3_Change. главное не весь текст заново слать, а только последний символ. так же будут глюки с бекспейсом.
Номер ответа: 2
Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 26.06.05 00:51
угу угу... а потом
Private Sub sckServer_DataArrival(ByVal bytesTotal As Long)
Dim strData As String
sckServer.GetData strData
Text1 = Text1 & strData 'передаем последний символ
End Sub
Номер ответа: 3
Автор ответа: ArtBase
ICQ: 55593017
Вопросов: 23
Ответов: 76
Профиль | | #3
Добавлено: 26.06.05 01:28
2Morpheus, то что надо по одному символу я уже и сам догадался после того, как мне выпала честь увидеть тот ужас, который выдал мой код.
В этом проблема и заключается, что я не знаю как по символу передать.
Номер ответа: 4
Автор ответа: Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #4
Добавлено: 26.06.05 02:25
может быть не совсем
Номер ответа: 5
Автор ответа: ArtBase
ICQ: 55593017
Вопросов: 23
Ответов: 76
Профиль | | #5
Добавлено: 26.06.05 02:30
отсюда вытекает следующий вопрос:
мне надо эту прогу как-то тестить,
надо чтоб одно окно было поверх остальных (ну это я знаю как) и чтоб оно было АКТИВНЫМ.
Ведь передача у меня ведется
Номер ответа: 6
Автор ответа: Morpheus
Вопросов: 224
Ответов: 3777
Web-сайт:
Профиль | | #6
Добавлено: 26.06.05 02:36
AppActivate "Блокнот"?
Bring me to life? ой,простите...BringWindowToTop?
Номер ответа: 7
Автор ответа: ArtBase
ICQ: 55593017
Вопросов: 23
Ответов: 76
Профиль | | #7
Добавлено: 26.06.05 03:05
Да если в таймер засадить
AppActivate "Безымянный - Блокнот"
тоже неплохо
Пасибы.
Ды-к как всетаки по символу передать по-нормальному?
Номер ответа: 8
Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #8
Добавлено: 26.06.05 03:20
Я что-то не пойму проблемы, вроде просто, юзаешь Text3_Change, берёш последний символ s$ = Mid(s$,Len(Text3)-1,1) передаёш его винсоком, он его та другой стороне принимает, и дописуеш этот символ к концу text3.
Номер ответа: 9
Автор ответа: nicolai
ICQ: 197368786
Вопросов: 6
Ответов: 91
Профиль | | #9
Добавлено: 26.06.05 11:58
а не легче
Номер ответа: 10
Автор ответа: Pashenko
ICQ: 176176951
Вопросов: 14
Ответов: 655
Профиль | | #10
Добавлено: 27.06.05 10:31
И всё-таки, наверное, лучше использовать не Text3_Change, а Text3_KeyPress и передавать код нажатой кнопки, тогда и с BackSpace проблем не будет.
Приблизительно так:
sckClient.SendData KeyAscii
End Sub
Dim strData As String
sckServer.GetData strData
SendKeys chr$(strData)
End Sub
Номер ответа: 11
Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #11
Добавлено: 27.06.05 23:32
2 Pashenko
Да, небудет, если только не соскочит фокус с окна