Jak prawidłowo dodać referencje ?

0

Od wczoraj uczę się C#
Pobrałem jakieś API z internetu i chcę go "po kawałku" stworzyć od nowa coś samemu.

w pobranym source nie ma żadnych błędów...
jednak jak w moim projekcie wpisuje te linijki, to podkreślają się one na czerwono:
screenshot-20240927210117.png

czy zainstalowanie tych pakietów nie jest wystarczające?
screenshot-20240927210159.png
co mam jeszcze zrobić aby nie było tych czerwonych podkreśleń ?

1

Te typy są zdaje się w "Microsoft.Windows.SDK.Contracts". IDE sam powinien ci podpowiedzieć właściwe paczki.
Najlepiej od razu rozpocznij z dobrze wybranym typem projektu, niektóre zależności są w postaci pakietów SDK i nie można ich dodać jako zwykłe referencje, sprawdź też TargetFramework i przede wszystkim co mówi komunikat gdy najedziesz na podkreślenie.
Porównaj sobie pliki projektów .csproj.
Możesz też załączyć tu cały projekt żeby ktoś ci powiedział co zrobiłeś nie tak, ale jednak najłatwiej będzie po prostu zacząć od nowa.

Poza tym UWP jest przestarzałe.

0

podkreślenie wydaje taki komunikat:
screenshot-20240927212125.png
zauważyłem też że w source pobranym z internetu w referencjach jest taka zakładka:
screenshot-20240927212201.png

której nie ma w moim projekcie...

a po zainstalowaniu tego co wspomniałeś "Microsoft.Windows.SDK.Contracts", już "Windows" sie nie podkreśla, teraz się podkreśla "graphics":
screenshot-20240927212517.png

0

no to jest właśnie to o czym pisałem, porównaj sobie csproj swojego projektu z tym pobranym, zwłaszcza sprawdź targetframework i sdk

0

o ile u mnie targetframework jest w pliku wpisany to w tym pobranym source microsoftu mam jedynie targetplatform...o frameworku nie ma nic

0

zrób po prostu tak samo. tych opcji się raczej nie da wyklikać, ustalają się automatycznie gdy rozpoczynasz dobry typ projektu

1

W aktualnych wersjach .NET, jeżeli chcesz skorzystać z przestrzeni nazw Windows.*, to nie musisz dodawać żadnych pakietów z NuGeta (a na pewno nie tego archaicznego), a tylko ustawić odpowiedni TargetFramework.

Otwórz sobie swój plik .csproj (kliknij prawym na projekcie i wybierz Edit Project File) i w sekcji TargetFramework wpisz np. net8.0-windows10.0.22621.0 - i to ci da dostęp do wszystkiego, co oferuje Windows 11 SDK w wersji 22621 (22H2). Ewentualnie możesz zejść niżej jeżeli używasz Windows 10, np. do wersji 19045 (net8.0-windows10.0.19045.0), tj. Windows 10 22H2 (aktualnie ostatnia wersja wspierana przez producenta).

0

A próbowałeś poszukać w internecie? DX11 ma ponad 10 lat, z punktu widzenia szybkiego rozwoju .net to wieki temu. Proponuję użyć aktualnej wersji - 12.2 - i dopasowanej do niejpaczki na nuget Microsoft.Direct3D.D3D12. Jeśli upierasz się, żeby użyć DX11, to Microsoft.DXSDK.D3DX jest legacy pack'iem.

1

Nauka c# zaczynając od projektu z directX
screenshot-20241003170806.png

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.