Microsoft Windows Vista Community Forums - Vistaheads
Recommended Download



Welcome to the Microsoft Windows Vista Community Forums - Vistaheads, YOUR Largest Resource for Windows Vista related information.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so , join our community today!

If you have any problems with the registration process or your account login, please contact us.

Driver Scanner

Garbage collector

microsoft.public.fr.windows.vista.programmation






Speedup My PC
Reply
  #1 (permalink)  
Old 01-23-2008
Laurent
 

Posts: n/a
Garbage collector
Bonjour,

j'ai développé une application en VB.NET 2.0 qui appelle une DLL C.

Mon application sous XP fonctionne parfaitement. La même application executé
sous Vista me donne l'erreur suivante :

"Attempted to read or write protected memory. This is often indicate that
other memory is corrupt"

Après quelques recherche, j'ai l'impression que le pbm viens de la gestion
de la mémoire. En effet, je passe en paramètre à ma DLL un pointeur vers des
structures et il semble que dans ce cas je dois dire au garbadge collecteur
de ne jamais déplacer la mémoire.

le liens ci-dessous donne des indications.
http://morpheus.developpez.com/dlldotnet/#LIV

Mais le mot clé "FIXED" est du C# et non du vb.net et je n'ai trouvé aucune
équivalence en vb.net

quelqu'un a t il une solution ?

Merci d'avance



Reply With Quote
Sponsored Links
  #2 (permalink)  
Old 01-23-2008
Jean-Claude BELLAMY
 

Posts: n/a
Re: Garbage collector
"Laurent" <laurent.graziani@free.fr> a écrit dans le message de
news:%23M%23KlcZXIHA.4868@TK2MSFTNGP03.phx.gbl...
> j'ai développé une application en VB.NET 2.0 qui appelle une DLL C.
>
> Mon application sous XP fonctionne parfaitement. La même application
> executé
> sous Vista me donne l'erreur suivante :
>
> "Attempted to read or write protected memory. This is often indicate that
> other memory is corrupt"



Est-ce une DLL du système ?
Si oui, laquelle et quelle fonction appelée ?

A partir du moment où une appli fonctionne sous l'OS "A" mais pas sous l'OS
"B", c'est que vraisemblablement le pb se situe dans l'OS, et non dans
l'appli.
La fonction appelée n'a peut-être plus la même syntaxe dans "B" par rapport
à celle dans "A" ...
P.ex. une chaine de caractères peut être simple dans "A" et UNICODE dans "B"
....

--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org

Reply With Quote
  #3 (permalink)  
Old 01-23-2008
Laurent
 

Posts: n/a
Re: Garbage collector
Non, ce n'est pas une DLL système. C'est une DLL C qui m'a été fournie et
que je distribue avec mon application

Laurent


"Jean-Claude BELLAMY" <Jean-Claude.Bellamy@wanadoo.fr> a écrit dans le
message de news: 00656E4A-3D0E-4E6D-B8D3-EC2AEA286F8B@microsoft.com...
> "Laurent" <laurent.graziani@free.fr> a écrit dans le message de
> news:%23M%23KlcZXIHA.4868@TK2MSFTNGP03.phx.gbl...
>> j'ai développé une application en VB.NET 2.0 qui appelle une DLL C.
>>
>> Mon application sous XP fonctionne parfaitement. La même application
>> executé
>> sous Vista me donne l'erreur suivante :
>>
>> "Attempted to read or write protected memory. This is often indicate that
>> other memory is corrupt"

>
>
> Est-ce une DLL du système ?
> Si oui, laquelle et quelle fonction appelée ?
>
> A partir du moment où une appli fonctionne sous l'OS "A" mais pas sous
> l'OS "B", c'est que vraisemblablement le pb se situe dans l'OS, et non
> dans l'appli.
> La fonction appelée n'a peut-être plus la même syntaxe dans "B" par
> rapport à celle dans "A" ...
> P.ex. une chaine de caractères peut être simple dans "A" et UNICODE dans
> "B" ...
>
> --
> May the Force be with You!
> La Connaissance s'accroît quand on la partage
> ----------------------------------------------------------
> Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
>



Reply With Quote
  #4 (permalink)  
Old 01-23-2008
Laurent
 

Posts: n/a
Re: Garbage collector
J'ai trouvé sur le NET, que cette erreur est relativement "Courante" et que
très peu de personne y on trouvé de réponse.

Cette erreur apparaît dans beaucoup de scénarios différents sans que l'on
sache vraiement pourquoi : il semble quand même que l'utilisation de DLL
perso ou autre, soient assez souvent impliquées.

Je n'ai trouvé que 2 endroits ou il y avait eu résolution du pbm : l'un par
ré-installation du framework v2.0, l'autre par désactivation des options
d'optimisation de la compilation.

J'ai mois même essayé les deux méthodes sans aucun effet. Pour ce qui est de
l'optimisation à la compilation, j'ai désactivé aussi bien sur mon code
managé que sur la DLL en C. mais aucune différence. Cela marche sur XP sans
pbm, et cela génère toujours la même erreur sur Vista.

Avis aux Experts !!!


"Laurent" <lauren postes qui ont rt.graziani@free.fr> a écrit dans le
message de news: %23M%23KlcZXIHA.4868@TK2MSFTNGP03.phx.gbl...
> Bonjour,
>
> j'ai développé une application en VB.NET 2.0 qui appelle une DLL C.
>
> Mon application sous XP fonctionne parfaitement. La même application
> executé
> sous Vista me donne l'erreur suivante :
>
> "Attempted to read or write protected memory. This is often indicate that
> other memory is corrupt"
>
> Après quelques recherche, j'ai l'impression que le pbm viens de la gestion
> de la mémoire. En effet, je passe en paramètre à ma DLL un pointeur vers
> des
> structures et il semble que dans ce cas je dois dire au garbadge
> collecteur
> de ne jamais déplacer la mémoire.
>
> le liens ci-dessous donne des indications.
> http://morpheus.developpez.com/dlldotnet/#LIV
>
> Mais le mot clé "FIXED" est du C# et non du vb.net et je n'ai trouvé
> aucune
> équivalence en vb.net
>
> quelqu'un a t il une solution ?
>
> Merci d'avance
>
>
>



Reply With Quote
  #5 (permalink)  
Old 01-24-2008
MCI \(ex do ré Mi chel la si do\) [MVP]
 

Posts: n/a
Re: Garbage collector
Bonsoir !

Problème classique. C'est le défaut de travailler avec des pointeurs.
Il faut que tu utilises les API de Windows, pour qu'il te réserve une
zone mémoire fixe, dont tu te serviras pour faire tes échanges IPC.

@-salutations

Michel Claveau


Reply With Quote
  #6 (permalink)  
Old 02-05-2008
Laurent
 

Posts: n/a
Re: Garbage collector
Bonjour,



J'ai bien compris qu'il me fallait une zone de mémoire fixe. C'est ce que
j'avais compris dès le début.



Je sais le faire en c# (mot clé FIXED), mais pas en vb.net.



Qu'entend tu par " Il faut que tu utilises les API de Windows" ?





Peux tu me donner un peu plus de détail ou des liens ou je puisse trouver la
chose ?



Merci d'avance



Laurent





"MCI (ex do ré Mi chel la si do) [MVP]" <enleverlesO.OmcO@OmclaveauO.com> a
écrit dans le message de news: OJ1zVRtXIHA.536@TK2MSFTNGP06.phx.gbl...
> Bonsoir !
>
> Problème classique. C'est le défaut de travailler avec des pointeurs.
> Il faut que tu utilises les API de Windows, pour qu'il te réserve une zone
> mémoire fixe, dont tu te serviras pour faire tes échanges IPC.
>
> @-salutations
>
> Michel Claveau
>
>



Reply With Quote
  #7 (permalink)  
Old 02-06-2008
MCI \(ex do ré Mi chel la si do\) [MVP]
 

Posts: n/a
Re: Garbage collector
Bonsoir !

Perso, j'utilise un truc appelé "mmap". Pour ça, il y a des fonctions
dans les librairies standards de Python, Ruby, Tcl, Perl.
En AutoIt, ce n'est pas géré en standard. Mais, quelqu'un a développé
une DLL en C qui permet les fonctions (minimales) nécessaires. Cette DLL
utilise la fonction "CreateFileMapping" de Windows.

Ainsi, je peux échanger des blocs de données, par la mémoire, entre
AutoIt, Python et Ruby. Et, comme j'ai développé en objet-serveur-COM
(en Python), j'ai accès aux fonctions mmap depuis beaucoup d'applis /
langages.

Voilà. Je n'en sais pas plus. Tu peux faire des recherches sur
"CreateFileMapping". Ou, sinon, je pourrais toujours de donner la DLL...

@-salutations

Michel Claveau


Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
DEP Garbage Richard microsoft.public.windows.vista.security 3 11-17-2007 09:08
spiritt collector collectting spirits microsoft.public.windows.vista.mail 1 10-09-2007 00:05
Web Image Collector 2.1 Netsoft Internet & Network Software Feed 0 05-10-2007 20:48
Newsgroup Image Collector 1.6 Netsoft Internet & Network Software Feed 0 05-10-2007 12:18




All times are GMT +1. The time now is 14:37.




Driver Scanner - Free Scan Now

Vistaheads.com is part of the Heads Network. See also XPHeads.com , Win7Heads.com and Win8Heads.com.


Design by Vjacheslav Trushkin for phpBBStyles.com.
Powered by vBulletin® Version 3.6.7
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0 RC 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120