Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

FreeLibrary qui ne rend pas la main :-(

28 réponses
Avatar
Aurélien REGAT-BARREL
Hello,
J'ai posté récemment une question afin d'arriver à protéger mon code d'une
bibliothèque capricieuse qui a tendance à ne pas rendre la main sur
certaines de ses fonctions (donc mon appli appelante freeze). Je la charge
avec LoadLibrary, bétonne mes appels et m'en débarasse avec FreeLibrary. Je
croyais être à l'abris jusqu'à ce que mon code plante malgré tout (freeze).
J'ai passé l'après midi à trouver le coupable : FreeLibrary qui elle aussi
freeze...

Là je m'avour vaincu : comment forcer Windows à décharger ce fouttu module ?
Je pense que c'est le DllMain -> DLL_PROCESS_DETACH buggé qui empêche de
décharger le module. Que faire dans un tel cas ?
Merci.

--
Aurélien REGAT-BARREL

8 réponses

1 2 3
Avatar
AMcD®
Aurélien REGAT-BARREL wrote:

Ben je vais te dire, je viens de finir mes études et j'ai fait les 2.
Ben c'est simple : je n'ai jamais eu un seul cours sur l'archi de
Windows (d'ailleurs sur Windows tout court). J'ai (avais) des potes
bac + 5 qui n'avaient jamais entendu parler de Visual Studio, un prof
d'IHM qui confondait MFC et Win32, et d'une manière générale
Microsoft c'est le grand Satan, Windows c'est tabou, ou plutot
censure.



Je sais. J'ai donné des cours par-ci, par là, fais des formations, etc.
Depuis 10 ans j'entends ça. Rajoute en plus la génération des 40-50
d'aujourd'hui qu'ont a forcé à passer sur informatique au boulot et qui
exècrent Microsoft plus pour cela qu'autre chose (si, si, qu'ils y
réfléchissent bien) et t'as un panel complet de la situation.

Mais, AMA, il ne faut pas jeter la pierre (que) sur les profs. Les
élèves ont une bonne part de responsabilité. Que veux-tu, pas mal ont
fait des études d'info par hasard presque, parce que les maths
c'était trop dur, pour ne pas rester chez soi avec papa & maman,
parce qu'ils aiment bien les jeux videos, etc...



Oui. Mais les profs dogmatiques, les vieux admins au pouvoir tout puissant
sur Unix y sont pour beaucoup aussi.

Des codeurs y'en a pas des masses, déjà. Difficile d'estimer, mais
selon moi si 1/4 des élèves lance de temps en temps un compilo chez
lui c'est franchement pas mal. Des mecs qui le lance régulièrement en
dehors des travaux scolaires (des curieux quoi), 10% au plus. Sur ces
10%, moi, en 5 ans, j'en ai rencontré aucun qui se soit plongé dans
Win32. Quelques uns ont touché à DirectX, .Net, ou VB et voilà. Alors
quand tu sais coder une dll, autant dire que t'es un as. La majorité
ne conçoit pas que tu saches quelque chose si un prof ne te l'a pas
appris.



Je sais. Mais c'est un peu normal aussi. Les études doivent tout de même
être axées sur des thèmes fondamentaux, pas sur du spécifique. Par exemple,
languages, algorithmique, architecture. Le gros problème, à mon avis, c'est
que dans tout ce que j'ai vu, on introduit derrière tout ça un background
Unix (enfin, aujourd'hui Linux). Certains par flemme, ils font du Unix
depuis 1970, d'autres par motivation "politique". Microsoft est riche, bouh,
faut pas. Moi, par exemple, j'avais des cours de shell Unix, mais rien sur
Windows. Pourtant 95% des offres d'emploi d el'épouqe c'était des
programmeurs Windows qu'on cherchait. Donc, après les études théoriques, il
y a un gros boulot personnel à faire. Les gros cadors d'ici te le diront, il
faut avoir lu une grosse demidouzaine de gros pavés sur la programmation
Windows et en gros 3-5 ans d'expérience pour commencer à franchement être à
l'aise. Cela serait pareil pour n'importe quel autre OS d'ailleurs hein.
Mais ça, on te le dis pas à la Fac. On te fait tes cours, un peu d
epolitique anti-Kro, on te file ton diplôme et salut. Et ceux qui se sont
bien fait montés la tête, ils déchantent vite sur le marché de l'emploi
ensuite...

Rajoute également que pisser du code comme dit VB, berk, c'est pas top
fashion. Aujourd'hui, faut être dans l'admin, le management, des trucs du
genre pour être hype. Programmer ? Hola, c'est quoi cette horreur.

>C'est ce que je trouve regrettable. On n'est franchement pas
encouragé à creuser. Tout ce qui compte c'est la note, et le
classement, ce fouttu classement.



Eh vi.

En fait la programmation est plus ou moins mal vue j'ai l'impression,
c'est un peu un sous boulot, c'est presque méprisable. Les cours de
prog s'arrêtent d'ailleurs aux bases de la programmation. On pourrait
troller en disant que y'a pas beaucoup de profs qui puissent
enseigner plus...



On m'a parfois demandé/proposé de faire ça. J'ai honte de publier les tarifs
proposés. Tu as bien raison, la programmation est méprisée. De toute façon,
pour le commun des mortels, c'est quoi un programmeur ? Ha bon, ça ne marche
pas tout seul un ordinateur ?

Dans le monde universitaire MS est clairement boycotté, banni, etc...
Je me suis pointé un jour avec mon abonnement MSDNAA, ah ah j'ai été
joliement remercié. Mais là encore si j'avais pas mal de potes pour
me dire "ouai ça serait super cool d'avoir ça" puis plus personne
pour aller au charbon et convaincre les profs.



Héhé, bienvenue dans la vie active mon gars.

J'ai eu ma soutenance de stage y'a pas longtemps, et j'ai assité à
celles des autres. Parmi elles, un mec qui explique qu'il a mis un
mois à découvrir que les RPC Sun et les RPC Windows c'était pas
compatible. Ô rage! Ô désespoir! C'est pas de bol. Ouai, ou pitêtre
que si on avait survolé une approche furtive de l'IPC sous Windows ce
genre de choses ne se produirait pas. Et certains des ces élèves
deviendront profs, et la boucle est bouclée.



C'est comme ça depuis le début des années 60 en gros. Faudra bien que ça
s'arrête un jour.

C++, hum, ça reste à voir. J'aimerais bien dire que je me tâte en C++,
mais... Et pourtant presque tout ce que je sais c'est comme pour
Win32, c'est bibine et pas la fac. Nan, les étudiant ils font du
Scheme, du CAML, du LISP et un peu de Java. Un peu de C aussi,
histoire que tu puisses avoir des null pointer exception dans ton
code, et voilà.



Oui, comme je t'ai dit plus haut, c'est du théorique, du gros frime tape à
l'oeil, mais à des années lumière du marché de l'emploi. Combien de gars
vont bosser avec Scheme ou CAML ? C'est l'inverse qui devrait être fait,
d'abord une grosse base théorique, puis une formation au produit le plus
représentatif du amrché, puis une formation complémentaire sur des choses
annexes (où là tu ferais du LISP par exemple). Mais non, tout fonctionne à
l'envers.

C'est triste à dire, mais moi j'ai fait 5 ans d'études pour ne pas me
retrouver sous la direction d'un trou du c** qui pige rien à rien
mais comme il a 1 ou 2 ans d'études de + que moi, ben il a forcément
raison. C'est ma hantise.



Lol. Arrête là toute espérance. C'est comme ça et même pire. L'abruti (dans
75% des cas) qui te commande n'a parfois même pas tes diplômes...

Mais bon faut relativiser, y'a pas mal de jeunes diplômés qui
moyennant un encadrement minimum peuvent faire du bon travail. Ils ne
sauront certainement jamais ce qu'est un descripteur de segment comme
tu dis, mais ils sont pas mauvais _dans leur domaine_ pour autant.



Je ne sais pas. Je pense que les djeunz rêvent un peu trop. Comme tu dis
plus haut, si un prof t'apprends pas un truc, les gars n'y vont pas par
eux-même. C'est de programmation dont on parle, pas de football ! Il y aura
toujours un énorme boulot de veille technologique à faire, et un énorme
boulot de formation perso à la sortie des études. Mais bon, faire des
efforts, c'est aps trop compatible avec l'air du temps :-).

EOT pour moi les amis.

--
AMcD®

http://arnold.mcdonald.free.fr/
Avatar
Thierry
Bonjour,

AMcD® a écrit :

Tu crois qu'il y aurait suffisement d'informaticiens si seuls les
nerds pouvaient faire des etudes d'infos ???



Je comprends ton point de vue, mais cela se discute. On peut détourner
par "puisqu'il n'y a pas assez de bons (ou de passionnés), prenons
n'importe qui".



C'est le cas, mais de façon marginale, je pense.

Au final, c'est le client qui trinque puisque les
programmeurs sont des gens qui font ça par dépit ou presque.



Pas forcément par dépit, mais ce ne sont pas forcement des passionnés qui
vont faire de l'assembleur en rentrant chez eux le soir. Chacun son choix.

Et puis l'assembleur c'est has been. Y'a vraiment que les hackeurs qui
s'interessent encore a ça. Les compilos c'est pas fait pour les chiens.
Avoir quelques notions, ok. Mais c'est pas une héresie de ne pas connaitre
les dernières intructions du pentium IV.

Ha mais non, c'est vrai c'est la faute à Microsoft :-).



Hé ho ! J'ai même pas (encore) dit du mal de MS !
:-)

--
« Always look at the bright side of the life... »
Avatar
Vincent Burel
"Thierry" wrote in message
news:
Bonjour,

Aurélien REGAT-BARREL a écrit :

Mais concernant la prog, c'est d'abord le(s) language(s) et la
"méthodologie" qui sont importants.



mouai, oui et non, ce qui manque beaucoup. c'est l'apprentissage des
méthodologie de prog, organization du code, et méthodlogie de mise en
oeuvre, ca c'est la catastrophe. Et j'allais dire , plus le langage est
évolué et plus c'est la catastrope.

> J'ai (avais) des potes
> bac + 5 qui n'avaient jamais entendu parler de Visual Studio,

Visual Studio n'est pas la seule possibilité pour faire du dev sous
Windows.



5 ans d'étude et tu connais pas l'outil le plus utilisé ! c'est quoi le
concept éducatif là !? :-)

Tu crois qu'il y aurait suffisement d'informaticiens si seuls les nerds
pouvaient faire des etudes d'infos ???



manifestement y'en a pas suffisamment ! :-).
Avatar
Aurélien REGAT-BARREL
> > Ben je vais te dire, je viens de finir mes études et j'ai fait les 2.
> Ben c'est simple : je n'ai jamais eu un seul cours sur l'archi de
> Windows (d'ailleurs sur Windows tout court).

Ca ne me choque pas. Quel pourcentage fait de la prog Windows Win32 ?
Je dis pas que les cours de systeme d'exploitation ne pourrait pas
s'appuyer sur Windows, pourquoi pas.



Je ne parle pas de Win32, mais de Windows, au sens large. Ne serait-ce
qu'une heure, une heure en 5 ans pour expliquer qu'il ne faut pas écrire
comme un cochon dans system32, le rôle de %appdata%, les profiles, la bdr,
... N'importe quel linuxien sait qu'il ne faut pas bosser en root, et tout
le monde est admin sous Windows. Les développeurs ont leur part de
responsabilité en écrivant des softs qui écrivent n'importe où.

Mais concernant la prog, c'est d'abord le(s) language(s) et la
"méthodologie" qui sont importants. Apres t'apprends ton framework tout
seul, avec la doc. Je vois mal un cours expliquant l'integralité des MFC.
Concernant mon experience, il y avait de plus en plus de Windows au fur et
a mesure du cursus (projet de deniere année, entre autres).
Et les autres projets, même si l'environnement etait Unix, c'etait pas
spécifique a Unix (OpenGL par exemple).

Y'a vraiment eu que la prog système spécifique a Unix.
Que ça soit sous Windows ou Unix, peut importe : ça sert finalement a peu
de monde. C'est juste didactique.
Et puis les mutex ou pipe c'est commun a tous les SE. Le principal c'est


de
comprendre le fonctionnement.



Je parle pas des libs, surtout des MFC. Je parle même pas de prog, mais de
l'archi Windows, des grandes grandes règles.
Après perso je trouve que faire un peu de Windows ça pourrait être
intéressant. fork c'est bien joli mais y'a les thread de nos jours, et les
Mutex ont peut faire mieux avec les sections critiques & thread, etc...

> J'ai (avais) des potes
> bac + 5 qui n'avaient jamais entendu parler de Visual Studio,

Visual Studio n'est pas la seule possibilité pour faire du dev sous
Windows.



"entendu parler", c'est ça qui me gêne. Cette année VC++ 6 était installé
sur nos postes, jamais jamais il a été mentionné. Du gâchi...
C'est de la culture générale, pour pas être comme un con le jour d'un
entretient "Et Visual Studio vous avez déjà bossé avec ?" "Heu... non j'ai
jamais fait de montage vidéo".

Tu crois qu'il y aurait suffisement d'informaticiens si seuls les nerds
pouvaient faire des etudes d'infos ???


Ca n'a rien à voir. Je regrette le manque de curiosité de certains
étudiants. Ca dépasse le cadre informatique. C'est un peu comme un étudiant
en lettres (ou je sais pas quoi) qui n'aurait jamais lu un livre en dehors
de ceux imposés.
"Les études c'est fait pour apprendre à apprendre".


--
Aurélien REGAT-BARREL
Avatar
Aurélien REGAT-BARREL
> > Mais concernant la prog, c'est d'abord le(s) language(s) et la
> "méthodologie" qui sont importants.

mouai, oui et non, ce qui manque beaucoup. c'est l'apprentissage des
méthodologie de prog, organization du code, et méthodlogie de mise en
oeuvre, ca c'est la catastrophe. Et j'allais dire , plus le langage est
évolué et plus c'est la catastrope.




Alors là tout à fait d'accord. C'est bien beau la théorie, mais quand il
s'agit de la mettre en pratique ça se gâte. J'ai bossé avec des mecs qui
avaient 18/20 aux interros de génie logiciel. Ils connaissaient par coeur la
théorie : abstraction, encapsulation, couplage, ... blablabla nickel chrome.
Mais dans la pratique, on nous a jamais dit ce que ça voulais dire. Résultat
: des fonctions de 500 lignes, des variables globales, etc... On s'est
fouttu de ma gueule quand j'ai voulu faire une classe avec des accesseurs.
Le cours on le met en pratique dans des exercices. En génie log c'est pas le
cas.
Un exercice que j'aurais bien aimé pratiquer c'est de développer un bout de
soft tout bête par équipes, et ensuite fiout on échange le boulot entre
équipes et on doit le reprendre. Là, certains principes du génie log
auraient été mis en évidence. Un profs l'avait fait l'année avant que je
l'ai, et il ne l'a pas reproduit car "c'était trop la merde"...

--
Aurélien REGAT-BARREL
Avatar
Aurelien REGAT-BARREL
> J'ai failli me lancer dans une longue explication imbitable sur
CreateRemoteThread(), mais sur ce coup là tu as raison. Le client est roi
!



Arf, j'ai râté une explication sur CreateRemoteThread(). D'autant plus que
j'en pige pas l'utilité; les seuls cas d'utilisation que j'ai vu c'est pour
de l'injection de code pour faire des trucs pas très recommandables.
Si tu sais pas quoi faire te gêne pas :-)

--
Aurélien REGAT-BARREL
Avatar
Cyrille Szymanski
Le 12-10-2004, AMcD® a écrit :
Personellement, ça fait un bail que j'ai pas mis un pied dans une
fac, un IUT, etc., mais tout de même, je me demande bien ce qu'on y
apprend aujourd'hui !



Oui ça serait intéressant de savoir et ça m'aiderait peut-être à
comprendre de quoi vous parlez.

Dans le fond il y a pas qu'un seul type d'informatique. En anglais on
dit "computer science" ce qui explicite la composante mathématique du
bidule. Dans ces cours on y apprend des choses telles que les
automates, les arbres, les calculs de complexité, les problèmes NP
complets etc. Je ne pense pas que ce type de cours ait pour but de
former des développeurs de logiciels, mais des scientifiques (le type
de gars qui utilise Matlab dans son bureau d'étude par exemple). Le
programmeur n'est pas un scientifique.

Le hic c'est peut-être qu'on base encore l'apprentissage sur des
langages ("cours de C", "cours de Java") alors qu'aujourd'hui cette
notion est clairement dépassée.

--
cns
Avatar
Vincent Burel
"Cyrille Szymanski" wrote in message
news:
Le 12-10-2004, AMcD® a écrit :
> Personellement, ça fait un bail que j'ai pas mis un pied dans une
> fac, un IUT, etc., mais tout de même, je me demande bien ce qu'on y
> apprend aujourd'hui !

Oui ça serait intéressant de savoir et ça m'aiderait peut-être à
comprendre de quoi vous parlez.

Dans le fond il y a pas qu'un seul type d'informatique. En anglais on
dit "computer science" ce qui explicite la composante mathématique du
bidule. Dans ces cours on y apprend des choses telles que les
automates, les arbres, les calculs de complexité, les problèmes NP
complets etc. Je ne pense pas que ce type de cours ait pour but de
former des développeurs de logiciels, mais des scientifiques (le type
de gars qui utilise Matlab dans son bureau d'étude par exemple).



Oui, y'a une partie théorique indégniable, qui n'a d'ailleurs pas besoin
d'être présentée sous forme d'un programme. Tu as raison de souligner que
les études universitaires ne sont ni la pour enseigner l'application des
sciences, ni là pour se limiter à une pratique en particulier (programmer en
"C" sous PC ! c'est terre à terre, il faudrait penser à s'élever un petit
peu au dessus des paquerettes). Par contre on va t'enseigner la pratique
d'outil mathématique , que tu appliquera bètement sans te demander pourquoi
ca marche, dont la technique de mise en oeuvre, à défaut d'être maitrisé est
apprise par coeur, bètement, ca commence par le b2-4ac , ca va jusqu'à
l'équa-diff, la diagonalisation de matrice, ou bien la transformée de qui tu
veux. Si c'est ca un scientifique, alors la FAC forme des scientifiques.

J'ajouterais qu'à l'université, en science en tout cas, tu n'es pas là pour
te cultiver. J'ai jamais vu un prof proposer une biblio sur sa matière ou
même un bouquin (à part le sien) en particulier qui te donnerai un
historique ou une approche alternative sur tout ou partie d'une science...
chose qu'on trouve d'ailleurs facilement outre-atlantique. En France
l'universitaire cherche plus à enseigner sa rigueur, mécanique et ridicule,
plutot que de faire passer un savoir ou une expérience... La FAC apprend un
formalisme avant tout, elle forme pas des scientifiques, ou des humaniste
comme on peut se le raconter ici ou là (le français vie beaucoup dans sa
tête :-), elle forme des mercenaires, capables de prouver, justifier
n'importe quoi, tout ce qu'on lui demande, et pour une bouchée de pain :-).
De "l'amiante c'est bon pour la santé" à "les OGM c'est sans risque". De
"l'eau est potable en Bretagne" à "mais non y'a pas plus de cancer
aujourd'hui qu'hier". Le scientifique est un Tartuffe, et je ne souhaite pas
à la FAC de former ce genre d'individu. Et dire qu'on fabriquais des
produits de beauté à base de Radium dans les années 50... non mais je te
jure! :-)

Le programmeur n'est pas un scientifique.



Et heureusement ! :-)

Le hic c'est peut-être qu'on base encore l'apprentissage sur des
langages ("cours de C", "cours de Java") alors qu'aujourd'hui cette
notion est clairement dépassée.



oui, c'est vrai, on a complètement éluder la partie hardware, on pourrait
éviter de parler de langage de prog en FAC, parce que c'est d'un vulgaire
sans limite :-)

VB
1 2 3