Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Bonjour,
J'ai créé une dll en C# (.NET 2.0 et 3.5) qui fait appel à des méthodes venant d'une librairie développée en C/C++.
Cette dernière est utilisée pour échanger des données à travers le web.
J'ai rendu la dll visible pour pouvoir l'instancier en VB6.
Lors de l'utilisation d'une des méthodes de la librairie, j'ai le message suivant:
Citation:
Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Le problème se produit sous Vista
J'ai testé toute une série de choses:
- Ajout de la balise [SecurityPermission(SecurityAction.Assert, Unrestricted = true)]
- Supprimé toutes les optimisations de compilation
- Passé d'une version .NET 2 à 3.5
Voilà le code:
Code:
1 2 3 4 5 6 7 8
| /// <summary>
/// Retourne le nom du fichier réponse
/// </summary>
/// <param name="hdleConnection"></param>
/// <returns></returns>
[DllImport("Module.dll", EntryPoint = "getResponse")]
[SecurityPermission(SecurityAction.Assert, Unrestricted = true)]
private static extern string getResponse(IntPtr hdleConnection); |
Existerait-il une bonne âme qui a déjà eu le même problème et qui aurait trouvé une solution, ou qui aurait un tuyau (ou plusieurs), une direction à me donner?
Merci pour votre aide.
Damzz