Velká věc, která se mezi Windows XP a Windows Vista/7 změnila, je zavedení UAC, což znamená, že uživatelé, i když jsou vytvořeni jako správci, nemají běžně přístup pro čtení/zápis do „důležitých“ umístění, jako je %programfiles% (Obvykle C:\Program Files nebo C:\Program Files (x86) ) adresář. To je důvod, proč vaše aplikace funguje na Windows XP a ne na Windows Vista.
Musíte uložit svá DATA v %programdata% adresář (což je obvykle C:\ProgramData ), pokud jsou data sdílena mezi uživateli na počítači nebo %appdata% (což je obvykle C:\Users\USERNAME_GOES_HERE\AppData\Roaming ), pokud je specifický pro daného uživatele. Nyní se již nebudete setkávat s problémem nemožnosti zapisovat do souboru.
Důvodem je to, že ukládáním dat do instalačního adresáře programů jste dělali špatnou věc . Systém Windows vám v tom dříve nezabránil, ale bylo poměrně široce zdokumentováno, že %programfiles% nebylo vhodné místo pro ukládání dat.