Leon Napisano Styczeń 30, 2018 Autor Zgłoś Udostępnij Napisano Styczeń 30, 2018 Maciej Pacuła napisał: Dwie uwagi: Pierwsza Nie twórz okien potomnych podczas WM_PAINT, tylko podczas WM_CREATE lub WM_INITDIALOG. Druga Upewnij się że hYear jest zmienną statyczną (static) OK przenioslem choc moja aplikacja nie wywoluje wielokrotnie PAINT ale dobra uwaga na pszyszlosc. Tak wiec dodalem static no i moge odzytac cos z edita i wypisac na innym edicie (wczesniej to nie dzialalo) ale nadal nie moge zapisac do pliku. Jeszcze jekies pomysly co mam zrobic aby to dzialalo? Dzieki Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Oddity Napisano Styczeń 30, 2018 Zgłoś Udostępnij Napisano Styczeń 30, 2018 Wykorzystaj poniższą funkcję zamiast obiektu file. Pierwszym argumentem jest ścieżka pliku (np. "c:\\moje dokumenty\\plik.txt"). Pamiętaj, że gdy w C/C++ podajesz położenie plików, to musisz używać podwójnych ukośników \\. Inaczej kompilator potraktuje znak następujący bezpośrednio po slashu jako znak kontrolny ASCII. Drugim parametrem funkcji jest wskażnik do bufora z tekstem. Gdy masz kontrolkę o identyfikatorze 100 i chcesz zapisać z niej dane do pliku c:\dane.dat, to piszesz: GetDlgItemText (hwnd, 100, szText, sizeof (szText) / sizeof (TCHAR)) ; fileWriteFile (TEXT ("c:\\dane.dat"), szText) ; A oto i funkcja: BOOL fileWriteFile (PTSTR pstrFileName, PTSTR pstrBuffer) { DWORD dwBytesWritten ; HANDLE hFile ; int iLength ; WORD wByteOrderMark = 0xFEFF ; SetCursor (LoadCursor (NULL, IDC_WAIT)) ; // Open the file, creating it if necessary if (INVALID_HANDLE_VALUE == (hFile = CreateFile (pstrFileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL))) return FALSE ; iLength = lstrlen (pstrBuffer) ; ; if (!pstrBuffer) { CloseHandle (hFile) ; return FALSE ; } #ifdef UNICODE WriteFile (hFile, &wByteOrderMark, 2, &dwBytesWritten, NULL) ; #endif WriteFile (hFile, pstrBuffer, iLength * sizeof (TCHAR), &dwBytesWritten, NULL) ; if ((iLength * sizeof (TCHAR)) != (int) dwBytesWritten) { CloseHandle (hFile) ; SetCursor (LoadCursor (NULL, IDC_ARROW)) ; return FALSE ; } CloseHandle (hFile) ; SetCursor (LoadCursor (NULL, IDC_ARROW)) ; return TRUE ; } Pozdrawiam Pinolca, żeby nie czuł się niepozdrowiony :P Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Leon Napisano Luty 1, 2018 Autor Zgłoś Udostępnij Napisano Luty 1, 2018 Moze to dziwneie zabrzmi, ale nie dziala. Zaczynam sie irytowac. Moze ma ktos jeszcze jakis pomysl. Wyczerpalem juz wszystkie mozliwosci, od fprintf poprzez write i put. Pomocy bo sie zalamie!!! Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.