Resursfiler
Last updated
Was this helpful?
Last updated
Was this helpful?
Ofta jobbar vi med filer som ska finnas i samma mapp som vårt program, eller i en filsökväg relativt programmet. Till exempel:
Json-filer som ska sparas till eller läsas in
Bildfiler som Raylib ska läsa in och rita till skärmen
Textfiler som innehåller spelets berättelse
Dessa letar programmet alltid efter i den nuvarande mappen (current folder). Vad som räknas som current folder varierar.
Använder man en utförlig launch.json (via t.ex. ) så är current folder mappen csproj-filen ligger i.
Använder man den ganska tomma default-launch-json-filen som C# Dev Kit numera skapar, så är current folder mappen som den kompilerade exe/dll-filen ligger i.
Det här är det rekommenderade sättet att lösa problemet på.
Öppna projektets csproj-fil. Den bör se ut ungefär såhär:
Lägg till en ny ItemGroup, till exempel direkt under den PropertyGroup som redan finns. I den nya ItemGroup:en lägger du in nya Content-element för de filer du vill ha med.
För att kopiera alla filer av en viss typ kan du använda *-tecken.
Skapa en mapp där du lägger alla bilder, textfiler och annat du vill ha med. Döp den till t.ex. Assets.
Gör så att mappen, inklusive alla undermappar och filer, kopieras:
Lägg bilder etc direkt i samma mapp som csproj-filen.
Använd F1 → .NET: Generate Assets for Build and Debug för att generera en launch.json.
Lägg alla nödvändiga filer direkt till mappen där exe/dll:en ligger. Kör du dotnet 7 blir det i bin\Debug\net7.0.
Kom ihåg att inte ta bort mappen utan att vara säker på att du har kopior av filerna!
Kom ihåg att kopiera in samma filer i din exe-fils mapp när du !