Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

Setup: Dateien im Ausgabeverzeichnis zusammen mit Programm installieren
Viper2000
myCSharp.de - Member



Dabei seit:
Beiträge: 63

Themenstarter:

Setup: Dateien im Ausgabeverzeichnis zusammen mit Programm installieren

beantworten | zitieren | melden

Hallo,

ich lade in meinem C# Projekt Binärdateien die im Unterordner "CUDAKernel" liegen.
Diese Binärdateien habe ich markiert als "Ins Ausgabeverzeichnis immer kopieren".

Folgenden Code verwende ich zum Laden:

cuda.LoadModule(Path.Combine(Environment.CurrentDirectory, @"CUDAKernel\vecAdd_kernel.cubin"));

Wenn ich nun das Projekt aus VS Express 2008 heraus starte funktioniert alles wunderbar, wenn ich es jedoch mit dem Veröffentlichungsassistenten veröffentliche und anschließend installiere dann wirft obengenannter Code eine "FileNotFound" Exception.

Ich habe jetzt schon einiges herumprobiert aber war noch nicht erfolgreich. Ich muss diese Binärdateien auch nach dem Veröffentlichen laden können.

Kann mir jemand vielleicht bitte helfen!?

Gruß
private Nachricht | Beiträge des Benutzers
Midnight Run
myCSharp.de - Member

Avatar #avatar-3029.jpg


Dabei seit:
Beiträge: 80
Herkunft: Hildesheim

beantworten | zitieren | melden

Hast du es schon mit Application.StartPath ausprobiert ?

cuda.LoadModule(Application.StartPath + @"\CUDAKernel\vecAdd_kernel.cubin"));
Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von Midnight Run am .
private Nachricht | Beiträge des Benutzers
Viper2000
myCSharp.de - Member



Dabei seit:
Beiträge: 63

Themenstarter:

beantworten | zitieren | melden

Das bringt auch nichts...die Binärdateien habe ich im VS2008 im Ordner CUDAKErnel organisiert. Wie muss ich diese bereitstellen (als Resource, eingebettete Ressource,...???) damit sie mit dem SETUP-Projekt mitkopiert werden und ich auf diese an definierter Stelle aus dem Code heraus zugreifen kann.
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Viper2000,

verstehe ich dich richtig, dass es kein Problem des Zugriffs ist, sondern dass das Verzeichnis vom Setup einfach nicht mitkopiert wird? Und du nun wissen willst, was du beim der Erstellung des Setup-Projekts einstellen musst, damit das passiert?

Du kannst natürlich die Dateien auch als Ressourcen zu der Anwendung hinzufügen (Ressourcen in Anwendungen), aber ob das sinnvoll ist, steht auf einem anderen Blatt (und hängt z.B. auch davon ab, über welche Größenordnungen wir hier reden).

herbivore
private Nachricht | Beiträge des Benutzers
Viper2000
myCSharp.de - Member



Dabei seit:
Beiträge: 63

Themenstarter:

beantworten | zitieren | melden

Hi herbivore,

ja die Dateien werden anscheinend nicht mit dem Setup des Visual Studio 2008 Express mit auf den Zielrechner kopiert. Wie gesagt, in der Debug Session bekomme ich keinen FileNotFoundException. Beid er Debug Session liegen die Files dann auch wirklich im Ordner /bin/Debug/CUDAKernel. Aber wenn ichd as Projekt veröffentliche landen diese nicht im Setup Projekt...
private Nachricht | Beiträge des Benutzers
FZelle
myCSharp.de - Experte



Dabei seit:
Beiträge: 9.975

beantworten | zitieren | melden

Das die IDE das Copieren übernimmt hat aber überhaupt nichts mit ClickOnce zu tun.

DU musst selber auf der Publizieren Seite die entsprechenden Dateien hinzufügen.
private Nachricht | Beiträge des Benutzers