Jos c++ dll:ssä käyttää staattisia globaaleja muuttujia (file scope), joita ei exportata, niin toimiiko systemi niikuin pitäisi, eli eri funtiot voisivat operoida samoilla globaaleilla muuttujilla ?
Testasin hieman eVC++ dll_llää parilla funktiolla. Kun kutsui yhtä funktiota toistuvasti (tiedon lataus ja viimeisen talletetun palautus), homma näytti toimivan, eli palutettu talletettu tieto oli ok. Mutta toinen dll:n funktio ei tuntunut saavan ekan lataamaa dataa näkyviin, tuli vain ikäänkuin alustamattomia muuttuja-arvoja.
Jos lautaus ja lukufunktiot asensi luuppiin vuorottelemaan, niin ohjelma jämähti. Eli ikäänkuin latausfunktiokin olisi menettänyt staattisien globaalien arvot eikä tiennyt enää latauskohtaa.
Mistä kiinni? Alustaako jokainen dll:n eri fuktion kutsu globaalit (file scope) muuttujat uusiksi tai tekeekö ihan oman instanssin?
Määrittelemällä globaalit luokan sisään kutsu eVB:stä ei toiminut toistaiseksi ollenkaan, eVB:llä on hieman hankala luoda c++ instanssia.
Aihe on jo aika vanha, joten et voi enää vastata siihen.