Bonjour ,
Je tente de venir me connecter à une mémoire partagée . Pour accéder à l'API windows j'ai utilisé
Dans mon programme C# à un certain moment j'appelle la fct MapViewOFile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 [DllImport("Kernel32.dll", SetLastError=true)] internal static extern IntPtr MapViewOfFile ( IntPtr hFileMappingObject, FileMap dwDesiredAccess, int dwFileOffsetHigh, int dwFileOffsetLow, int dwNumberOfBytesToMap );
m_pSharedMem pointe alors sur la zone mémoire (d'un objet de type toto )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 m_pSharedMem = Win32Native.MapViewOfFile(m_hSharedMem, Win32Native.FileMap.FILE_MAP_READ, 0, 0, 0); ou private IntPtr m_hSharedMem = IntPtr.Zero; private IntPtr m_pSharedMem = IntPtr.Zero;
Normalement en C++ je définissais un pointeur (m_ptrtoto) et j'effectué le casting suivant pour accéder à la mémoire partagée
Le problème est que je n'arrive pas à transcoder cette ligne de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 toto * m_ptrtoto ; m_ptrtoto = (toto*) m_pSharedMem;
Si quelqu'un à une solution à me proposer![]()
Partager