Witam, chce stworzyć jak gdyby instalkę mojego programu, ale mam mały problem.
Problem jest z obrazkami, bo ich nie ma w tej instalce i po uruchomieniu wywala błędy.
Próbowałem w Visual'u w Solution Explorer dodać te obrazki (myślę że to pomoże), ale teraz nie wiem jak się do nich dostać z poziomu kodu. Wcześniej to je wrzucałem do folderu *.\bin\Debug" i było ok aż do momentu utworzenia instalki, bo po przeniesieniu na innego kompa juz nie działało. Tak samo mam z plikiem html, też nie wiem jak się do niego dostać z poziomu kodu.
Bardzo proszę o pomoc
Po pierwsze, co to jest "jak gdyby instalka"? Po drugie, z Twojego postu nic nie wiadomo.
Więc tak, po napisaniu klikam Build->Publish ... i tworzy się folder o jakiejś tam nazwie i przenoszę to na inny komputer na którym chce to uruchomić.
Problem jest w tym, że program ma m.in. kopiować plik, a dokładnie obrazek np. na dysk c. Przy próbie włączania wywala błąd, że nie ma pliku. Pytanie jest następujące:Jak się dostać do pliku a.jpg z Solution Explorer by przy użyciu funkcji File.Copy(..., @"C:/a.jpg") skopiować go.
Nie wiem czy dobrze zrozumiałem problem... chcesz po prostu skopiować plik który masz osadzony jako zasób w programie? Jeżeli tak, to:
System.IO.File.WriteAllBytes("C:\\obrazek.jpg", Properties.Resources.nazwa_pliku);
Fr33Q napisał(a)
Nie wiem czy dobrze zrozumiałem problem... chcesz po prostu skopiować plik który masz osadzony jako zasób w programie? Jeżeli tak, to:
System.IO.File.WriteAllBytes("C:\\obrazek.jpg", Properties.Resources.nazwa_pliku);
wywala błąd
Error 1 The best overloaded method match for 'System.IO.File.WriteAllBytes(string, byte[])' has some invalid arguments *.\Form1.cs 205
Error 2 Argument 2: cannot convert from 'System.Drawing.Bitmap' to 'byte[]' *.\Form1.cs 205
A widzisz Ty w ogóle jakie argumenty przyjmuje metoda "WriteAllBytes"???
Jeśli nie to Ci powiem: pierwszym argumentem jest "string" a drugim "byte[]". A Ty zamiast "byte[]" próbujesz jej przekazać "Bitmap". Musisz zamienić swój obrazek na tablicę bajtów - mówi Ci o tym jak byk Error 2.