[C#/XNA] Exe draaien zonder XNA Framework installatie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Beste tweakers,

Voor een project van school (universiteit) ben ik bezig een applicatie te schrijven in C#, waarbij ik gebruik maak van Direct X om beelden te renderen. Ik maak hierbij gebruik van de Microsoft XNA framework omdat deze mij het makkelijkste leek om zo'n applicatie te realiseren.

Nu heb ik op mijn laptop een werkende demo van de applicatie, echter werkt deze niet op de school computers omdat deze niet beschikken over het XNA framework. (De applicatie crashed met een IOFileNotFound exception (of zoiets dergelijks), waaruit blijkt dat hij de XNA reference niet kan vinden. Vanwege het ontbreken van admin rechten en lastige systeembeheerders is het niet mogelijk de xna framework te installeren op de school computers.

Is het mogelijk om de dll's waar deze verwijzingen in staan 'mee te bakken' in de applicatie zelf of de dll's mee te geven in de distributie? Of is dat sowieso geen oplossing voor mijn probleem?

(Ik heb zelf hier niets over kunnen vinden en heb weinig ervaring met programmeren voor windows.)

Alvast bedankt voor alle hulp!

Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Als het alleen een stel libraries zijn moet dat gewoon kunnen. Maar als het installeren van dat framework nog meer fratsen uithaalt, dan kan het een probleem zijn. Ik heb soortgelijke dingen iig gedaan met LLBLGen, en dat werkte prima.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Grijze Vos schreef op zondag 16 november 2008 @ 16:43:
Als het alleen een stel libraries zijn moet dat gewoon kunnen. Maar als het installeren van dat framework nog meer fratsen uithaalt, dan kan het een probleem zijn. Ik heb soortgelijke dingen iig gedaan met LLBLGen, en dat werkte prima.
Hoe gaat dat in zijn werk? Ik heb al in references naar de betreffende DLL's gelinkt, maar dan worden ze nog niet meegenomen.

Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Ik bouw voornamelijk webapplications, misschien dat het daar wat anders aan toe gaat. Kopieer de DLL's een met de hand in de map waar de .exe staat?

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

Verwijderd

Visual Studio heeft een vrij aardige MSI installer module, die ook kan bepalen welke prerequisites je applicatie nodig heeft en die eventueel ook toevoegt aan je .msi file. Dus als je voor XNA alleen een stel dll's hoeft toe te voegen is dat simpel te doen.

Acties:
  • 0 Henk 'm!

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Verwijderd schreef op zondag 16 november 2008 @ 22:08:
Visual Studio heeft een vrij aardige MSI installer module, die ook kan bepalen welke prerequisites je applicatie nodig heeft en die eventueel ook toevoegt aan je .msi file. Dus als je voor XNA alleen een stel dll's hoeft toe te voegen is dat simpel te doen.
Prerequisites gaat in het geval van TS niet werken omdat XNA zelf niet geinstalleerd mag worden. De TS zal zelf alle XNA libraries moeten opzoeken en naar de exe locatie moeten kopieren. Aangezien XNA niet 'officieel' op de school computer is geinstalleerd zullen de XNA libraries ook niet via andere call geladen zijn. Als laatste zoekt de runtime in de GAC voor de XNA libaries. Aangezien de TS het XNA framework zelf niet kan installeren op de school computer, acht ik de kans klein dat hij wel via een MSI zijn eigen applicatie mag installeren.

En en andere is ook terug in de MSDN onder 'Development Tools en Languages' --> Visual Studio --> .NET Framework programming --> .NET Framework core development --> Deploying applications --> How the runtime locates assemblies.

De TS moet er wel op letten dat hij echt *ALLE* benodigde libraries kopieert, dus ook eventuele dependencies van de XNA libraries.

@TS: Waarom heb je niet eerder bij je project leider gecontroleerd of je het XNA framework kan en mag gebruiken? Dat valt eigenlijk onder het vast stellen van de requirements van de applicatie en is eigenlijk net zo belangrijk als inventariseren van wat de applicatie zelf moet doen. Waarvan maken je mede studenten dan gebruik? Overigens ben je met XNA 2.0 of met de 3.0 (beta) versie aan de slag gegaan. Op de laatste zullen de systeembeheerders niet staan te springen..

If it isn't broken, fix it until it is..


Acties:
  • 0 Henk 'm!

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 08-09 11:33
Op creators.xna.com is hier ook een topic over. Er zijn idd manieren, maar zoals niemand anders al zegt is de MSI installer geen oplossing.

~ Mijn prog blog!


Acties:
  • 0 Henk 'm!

  • MLM
  • Registratie: Juli 2004
  • Laatst online: 12-03-2023

MLM

aka Zolo

Indien DirectX wel geinstalleerd is op de PC's (en de juiste versie), dan is het niet een erg groot probleem, gewoon de XNA libraries samen met jouw executable (alles in zelfde directory) neergooien, en het zal wel werken.

Tevens is het misschien een verstandig idee om de Exception.Message van je exception even te bekijken zodat je precies weet welke library er mist :)

-niks-


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Niemand_Anders schreef op maandag 17 november 2008 @ 08:57:
[...]
@TS: Waarom heb je niet eerder bij je project leider gecontroleerd of je het XNA framework kan en mag gebruiken? Dat valt eigenlijk onder het vast stellen van de requirements van de applicatie en is eigenlijk net zo belangrijk als inventariseren van wat de applicatie zelf moet doen. Waarvan maken je mede studenten dan gebruik? Overigens ben je met XNA 2.0 of met de 3.0 (beta) versie aan de slag gegaan. Op de laatste zullen de systeembeheerders niet staan te springen..
Ik gebruik 3.0, aangezien ik geen 2.0 kon vinden voor Visual Studio 2008. Maar de versie maakt niet zoveel uit, het is sowieso onmogelijk om binnen een maand iets op die pc's te krijgen begreep ik van de project leider.

Wat het gebruik van XNA betreft, we staan volledig vrij in wat we mogen programmeren in een bepaald gedeelte van het programma. We moeten d.m.v. handgebaren voor de webcam een programma aansturen. Wat we aansturen mogen we zelf verzinnen, enige vereiste is dat het draait op een school pc.

Het lastige is, dat op computers elders in ons faculteit XNA wel draait meen ik, echter niet waar wij zitten.

@ De rest

Alvast bedankt voor alle opmerkingen! Ik zal morgen het 1 en ander uitproberen!

Acties:
  • 0 Henk 'm!

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

En de referenties lokaal kopieren? Gaat dat?

Of eigen laptop meebrengen en het daarop presenteren?

Going for adventure, lots of sun and a convertible! | GMT-8


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
roy-t schreef op maandag 17 november 2008 @ 09:54:
Op creators.xna.com is hier ook een topic over. Er zijn idd manieren, maar zoals niemand anders al zegt is de MSI installer geen oplossing.
Heb je toevallig een linkje? Ik heb even op het forum gekeken, maar ik kan de topic die je aanwijst niet vinden.. :(
Snake schreef op maandag 17 november 2008 @ 22:02:
En de referenties lokaal kopieren? Gaat dat?

Of eigen laptop meebrengen en het daarop presenteren?
Ik heb vorige week d.m.v. publish een exe geproduceerd en de dll's naar de map met de exe gekopieerd, echter kreeg ik nog steeds dezelfde exception.

Dat laatste is volgens mij geen mogelijkheid, in ieder geval niet op mijn laptop, aangezien daar de software voor de webcam niet op werkt (we moeten een library voor MatLab van de TU gebruiken en die werkt uiteraard niet op Vista x64).

[ Voor 45% gewijzigd door Verwijderd op 17-11-2008 22:07 ]


Acties:
  • 0 Henk 'm!

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 08-09 11:33
Verwijderd schreef op maandag 17 november 2008 @ 22:05:
[...]

Heb je toevallig een linkje? Ik heb even op het forum gekeken, maar ik kan de topic die je aanwijst niet vinden.. :(

[...]


Ik heb vorige week d.m.v. publish een exe geproduceerd en de dll's naar de map met de exe gekopieerd, echter kreeg ik nog steeds dezelfde exception.

Dat laatste is volgens mij geen mogelijkheid, in ieder geval niet op mijn laptop, aangezien daar de software voor de webcam niet op werkt (we moeten een library voor MatLab van de TU gebruiken en die werkt uiteraard niet op Vista x64).
Die kan ik nu ook even niet vinden, misschien staat hij op het blog van shawn hargreaves?

~ Mijn prog blog!


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Sorry voor de late reactie jongens!

Het is in ieder geval nog steeds niet gelukt om de DLL's te gebruiken.

Ik ben er echter wel achter gekomen dan op de school computers XNA 2.0 aanwezig is. Om die reden ben ik teruggevallen op VS2005 i.c.m. XNA Game Studio 2.0, waarvan de exe's wel prima draaien op de school pc's.

Toch bedankt voor alle reacties!

Acties:
  • 0 Henk 'm!

  • Gorion3
  • Registratie: Februari 2005
  • Laatst online: 24-08 08:28

Gorion3

ABC++

Wat ik zelf altijd doe is het xnaframework.dll mee kopieren en dat heeft altijd gewerkt. Letop.. microsoft wilt dat niet hebben, dus misschien is dat in jouw geval geen optie. (Tenminste het is mij vertelt dat illegaal is om die .dll file mee te geven, zonder dat het xna framework zelf is geinstalleerd.)

Awesomenauts! Swords & Soldiers


Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:31

TeeDee

CQB 241

Webcam, handgebaren? Kijk eens naar Touchless.

Heart..pumps blood.Has nothing to do with emotion! Bored

Pagina: 1