Передача объёмистых строковых данных между приложениями - VB

Узнай цену своей работы

Формулировка задачи:

Нужно из одного приложения (VB6 Standard EXE) передать в другое приложение (тоже VB6 Standard EXE) здоровенные строки. Кроме как через файл - можно ли это ещё как-то сделать? приходит в голову только следующее: в источнике создать скрытый текстбокс, разместить в нём всю строку, затем КАК-ТО (DDE, к примеру) послать приёмнику хэндл этого текстбокса, который заодно и послужит сигналом, что есть новые данные. Затем приёмник через АПИ читает текст из текстбокса (зная его хэндл) - и всё. Но по-моему, это не самый лучший вариант...

Решение задачи: «Передача объёмистых строковых данных между приложениями»

textual
Листинг программы
  1. Private intMax As Long ' извиняйте за неверный префикс, писал второпях
  2.  
  3. Private Sub Form_Load()
  4.   intMax = 0
  5.   tcpServer(0).LocalPort = Номер_того_же_порта
  6.   tcpServer(0).Listen
  7. End Sub
  8. -------------------------------------------
  9. Private Sub tcpServer_ConnectionRequest(Index As Integer, ByVal requestID As Long)
  10.    If Index = 0 Then
  11.       intMax = intMax + 1
  12.       Load tcpServer(intMax)
  13.       tcpServer(intMax).LocalPort = Номер_того_же_порта
  14.       tcpServer(intMax).Accept requestID
  15.    End If
  16. End Sub
  17. ---------------------------------------------
  18. Private Sub tcpServer_DataArrival(Index As Integer, ByVal bytesTotal As Long)
  19.   Dim strData As String
  20.   '
  21.  tcpServer(Index).GetData strData
  22.   MsgBox strData ' собственно полученый текст
  23. End Sub
  24.  
  25. ------- обработка ошибки (необязательно, но желательно) ----
  26. Private Sub tcpServer_Error(Index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
  27.   MsgBox Description, vbCritical, 'Ошибка!!!!'
  28. End Sub
  29. --------- ну и почистим за собой при выходе ------------
  30. Private Sub cmdStop_Click()
  31.   Dim i As Integer
  32.   '
  33.  On Error Resume Next
  34.   '
  35.  With tcpServer
  36.     For i = 0 To .Count
  37.       .Item(i).Close
  38.     Next i
  39.   End With
  40.   Unload Me
  41. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы