первым долгом, внятно обясню.
Не сидит в коде после CopyMemory ничего. У меня там после многих
попыток и пыток огромное количество, то код, то закомментированный код, Этот участок был закомментирован.
Сожалею очень и извиняюсь.
реально во втором процессе работает следующий код:
- Код: Выделить всё
Dim hViewFile2 As Long
Dim hMapFile As Long
Private Sub Form_Load()
Dim sSave As String
sSave = Space(10)
hMapFile = OpenFileMapping(PAGE_READWRITE, 0, "My_File")
If hMapFile = 0 Then MsgBox ("Can't Create memory!"): Exit Sub
hViewFile2 = MapViewOfFile(hMapFile, PAGE_READWRITE, 0, 0, 0)
If hViewFile2 = 0 Then MsgBox ("Can't View memory!"): Exit Sub
CopyMemory sSave, ByVal hViewFile2, 10
'
'
Label1.Caption = hMapFile
Label2.Caption = hViewFile2
Label3.Caption = sSave
If hViewFile2 <> 0 Then UnmapViewOfFile hViewFile2
End Sub
Private Sub Form_Unload(Cancel As Integer)
If hMapFile <> 0 Then CloseHandle hMapFile
End Sub
Я этот участок проходил в пошаговом режиме тысячу раз. все хендли
и переменние как будто бы принимают нужное значенье, но после CopyMemory в sSave “ “ заменяется на ““ и все.
Я этот CopyMemory перенес даже в ваш код (известный топик по моему “Копирование массивов между процессами”), там тоже
в sSave оказывается ““