Kompilacja gotowego rozwiązania w Visual Studio

0

Witam.
Napisałem aplikację okienkową WinForms i mam problem. Zmieniłem opcję kompilacji na Relase i w folderze bin/Relase pojawiły się pliki:

user image

Przy próbie uruchomienia aplikacji niestety nic się nie dzieje, tworzy się proces i coś jakby się ładowało (a w VS kompiluje się normalnie).
Nie za bardzo wiem jak znaleźć tego przyczynę, może trzeba zmienić jeszcze jakieś ustawienia w VS?

Proszę o pomoc.
Pozdrawiam.

1

Dodaj jakieś logi do aplikacji żebyś widział co się dzieje, albo Tools -> Attach to Procces i debuguj. :)

0

Zrobiłem tak jak pisałeś z tym debugowaniem, dostałem informację: wntdll.pdb not loaded
Do tego:
user image
Rozumiem że muszę sobie wntdll.pdb gdzieś dograć?

0

Przeczytałem ten wątek, ściągnąłem te symbole, zainstalowałem. W Tools -> Debugging -> Symbols podałem do nich ścieżkę:
user image

Następnie Tools -> Attach to Process i podłączyłem się do procesu apki który nie odpowiada a tu taki error:
user image
Sprawdzałem lokalizację tego pliku "C:\Windows\SysWOW64\ntdll.dll", jest tam a debugowanie krzyczy że go nie ma.
Następnie znów Tools -> Debugging -> Symbols -> Load all symbols. Coś tam się poładowało. Skompilowałem aplikację jeszcze raz z opcją Relase, ale nadal nie odpowiada.

0

Zaznacz to "Microsoft Symbol Servers", nie musisz niczego osobno ściągać.

Debuguje się wersję Debug, a nie Release.

Uruchom program (z debugerem), kiedy się zawiesi zatrzymaj a zobaczysz na czym się zawiesza.

0

W trybie Debug jak i Relase w VS po kompilacji program działa, ale jak sobie wejde w eksploratora windows bin -> Relase i próbuję uruchomić Zgloszenia.exe to się nic nie dzieje (skompilowany program w trybie Debug mogę normalnie uruchomić przez eksplorator windows).
W C# i VS siedzę od niedawna i nie ogarniam jeszcze tego ;)

@Edit
Zaznaczyłem tę opcję o której pisałeś post wyżej, ale nadal aplikacja nie odpala. Teraz jak już wejdę w tools -> Attach to Precess mam po prostu:
user image
Call Stack:
user image
Czyli nadal tego brakuje mimo iż zaznaczyłem opcję Microsoft Symbol Servers w ustawieniach.

0

Symboli nie brakuje, co widać w call stack. Brakuje informacji w samym exeku, ale to dlatego że był skompilowany jako release zamiast debug.

0

Mógłbyś mi powiedzieć jak skompilować program aby był do użytku na innych komputerach, bo w kompilatorze się kompiluje i działa, a jak próbuję odpalić .exe to nic z tego. Myślałem, że uruchamia się programy w trybie Relase (te już końcowe projekty) i to z nim mam problem bo Debug mi śmiga.
Można się jakoś pozbyć plików .pdb, exe.config, svhost.exe. Tak aby został sam plik .exe + pliki i biblioteki, które sam dodałem. Albo chociaż jakieś materiały w sieci. Sam szukałem, ale nie znalazłem nic.

0

<QUOTE>Można się jakoś pozbyć plików .pdb, exe.config, svhost.exe</QUOTE>
Visual generuje takie pliki, ale nie są potrzebne do działania programu.

.pdb to właśnie symbole dla debugera.
.config zawiera pewne ustawienia konfiguracyjne dla .NET Frameworka, czasami mogą być istotne ale zwykle nie są.
host exe to jakiś dodatkowy plik potrzebny visualowi do debugowania, nie jest potrzebny.

0

W folderze gdzie mam projekty uruchamiam program bez problemu w trybie Debug. Gdy przeniosę wszystkie pliki powiedzmy do folderu na pulpit bah, nie działa. Relase jak nie działało tak nie działa.
W trybie debugowania jak wspomniałem mogę uruchomić aplikację bez przenoszenia jej, a gdy przeniosę ją przykładowo na pulpit, mam ten sam problem co z Relase.

0

A do tych plików wav podajesz gdzieś w projekcie pełną ścieżkę?

0

Dodaje je do projektu Add->Existing Item, ale później podaje już tylko ich nazwę bez pełnej ścieżki:

(new System.Media.SoundPlayer("nowe_zgloszenie_0.wav")).Play();

1 użytkowników online, w tym zalogowanych: 0, gości: 1