• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

2 Messageboxy przy nadpisaniu pliku tekstowego

Object Storage Arubacloud
+1 głos
312 wizyt
pytanie zadane 2 lutego 2019 w C# przez Striker Ninja Początkujący (480 p.)

Witam.

Zacząłem bawić się w zapisywanie zawartości textBox do pliku tekstowego. Zrobiłem SaveFileDialog, który otwiera oczywiście okno z zapisem i wszystko ładnie działa. Problem mój polega na tym, że przy próbie nadpisania pliku .txt wyświetlają się 2 messageboxy z zapytaniem czy nadpisać plik:

W zwykłym notatniku np. tego drugiego messagebox'a nie ma przy nadpisywaniu. Trochę kombinowałem i nie wiem jak zaradzić, żeby ten drugi messagebox się nie pojawiał.

Kod do funkcji:

        private void zapiszToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SaveFileDialog sv = new SaveFileDialog();
            sv.Filter = "Dokumenty tekstowe(*.txt)|*.txt|Wszystkie pliki(*.*)|*.*";
            if (sv.ShowDialog() == DialogResult.OK)
            {
                System.IO.File.WriteAllText(sv.FileName, textBox1.Text);
                this.Text = sv.FileName;
            }
        }

Bawiłem się jeszcze StreamWriterem, ale problem był ten sam.

komentarz 4 lutego 2019 przez Striker Ninja Początkujący (480 p.)
przeniesione 4 lutego 2019 przez Striker Ninja
Wrzuciłem tą aplikację na swój tablet i tam nie ma tego problemu oO. Wina musi leżeć gdzieś po stronie mojego sprzętu na, którym pisałem ten projekt, ale dziwne to jest, bo inne programy przy nadpisywaniu pliku nie zachowują się tak (tzn. wyświetlają tylko jeden messagebox z zapytaniem).
komentarz 4 lutego 2019 przez MikDal Mądrala (5,660 p.)
jaką masz wersję Windows? Dokładnie numer build'a poproszę :).
komentarz 4 lutego 2019 przez Striker Ninja Początkujący (480 p.)
Microsoft Windows [Version 10.0.17763.253]
komentarz 4 lutego 2019 przez Striker Ninja Początkujący (480 p.)
Sorki, już zmieniłem
komentarz 4 lutego 2019 przez MikDal Mądrala (5,660 p.)
Zedytowałem swoją odpowiedź, według Microsoft należy zainstalować łatkę :).

1 odpowiedź

+1 głos
odpowiedź 4 lutego 2019 przez MikDal Mądrala (5,660 p.)
wybrane 4 lutego 2019 przez Striker Ninja
 
Najlepsza

Takie zachowanie nie jest normalne (mam nadzieję, że dojdziemy do jego źródła i mu zaradzimy – wtedy edytuję tę odpowiedź).

Doraźnym rozwiązaniem problemu będzie usunięcie zapytań o nadpisanie. SaveFileDialog pozwala na to za pomocą SaveFileDialog.OverwritePrompt oraz SaveFileDialog.CreatePrompt.

Nie jest to rozwiązanie rekomendowane przeze mnie jeśli chcesz, aby pytanie o nadpisanie zostało – dlatego, że na innej maszynie (np. mojej) taki błąd nie występuje i po usunięciu pytania o nadpisanie plik zostałby zmieniony możliwie bez mojej wiedzy.


EDYCJA:

Zgodnie z tym wątkiem na forum pomocy Microsoft problem lezy w najnowszej aktualizacji Windowsa 10 1809 bez najnowszych łatek (sam mam tę wersję instalowaną przed kilkunastoma dniami i wszystko działa). Także polecam zaktualizować system przez Windows Update bądź ściągnąć łatkę kb4481031.

komentarz 4 lutego 2019 przez Striker Ninja Początkujący (480 p.)
Dziękuje. Ten projekt edytowałem kilkakrotnie i możliwe, że ja coś zapomniałem gdzieś usunąć/zmienić. Będę się głowił nad tym dalej.
komentarz 4 lutego 2019 przez Striker Ninja Początkujący (480 p.)

@MikDal,
 Teraz działa. Jest zaktualizowane do najnowszej wersji i już problem nie występuje

Podobne pytania

+1 głos
1 odpowiedź 335 wizyt
–1 głos
1 odpowiedź 430 wizyt
0 głosów
2 odpowiedzi 878 wizyt
pytanie zadane 2 sierpnia 2018 w C i C++ przez wihajster Początkujący (460 p.)

92,536 zapytań

141,377 odpowiedzi

319,456 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...