Pregunta

Me las arreglé para improvisar una aplicación adecuada de un juego de ejemplo en C # con XNA. Sin embargo cuando intento crear una instancia de mi clase derivada juego, el código emite una excepción FileNotFound intentar acceder a la asamblea Microsoft.Xna.Framework. ¿Por qué sucede esto?

Código:

#light
open System
open Microsoft.Xna.Framework
open Microsoft.Xna.Framework.Audio
open Microsoft.Xna.Framework.Content
open Microsoft.Xna.Framework.Design
open Microsoft.Xna.Framework.GamerServices
open Microsoft.Xna.Framework.Graphics
open Microsoft.Xna.Framework.Input

type SampleGame() as self =
    class
    inherit Game()
    let mutable manager : GraphicsDeviceManager = null
    let mutable spriteBatch : SpriteBatch = null
    do
        manager <- new GraphicsDeviceManager(self)
    override Game.Initialize() = 
        base.Initialize()
    override Game.LoadContent() = 
        spriteBatch <- new SpriteBatch(manager.GraphicsDevice)
        base.LoadContent()
    override Game.Update(gameTime) = 
        base.Update(gameTime)
        if GamePad.GetState(PlayerIndex.One).Buttons.Back = ButtonState.Pressed then
            self.Exit()
    override Game.Draw(gameTime) = 
        manager.GraphicsDevice.Clear(Color.CornflowerBlue);
        base.Draw(gameTime)
    end

let game = new SampleGame()
game.Run()

He añadido las referencias apropiadas por el camino. Editar: después de un poco de exploración, he encontrado que mi proyecto # F está siendo compilado de 64 bits, lo que no funciona con los archivos DLL de XNA de 32 bits. Sin embargo VS 2010 duerma me deja cambiar la plataforma de solución. ¿Cómo puedo solucionar esto?

¿Fue útil?

Solución

No sé lo suficiente sobre XNA, pero ¿es 'en la GAC', o necesita copiar los archivos DLL de XNA al lado de su .exe? Suena como tal vez con Microsoft.Xna.Framework.dll al lado de su .exe puede resolverlo.

editar

Sobre la base del código de información 32/64-bit, tal vez cambiar manualmente el "" en el archivo .fsproj. (Haga clic derecho en el proyecto, 'Descargar proyecto', luego a la derecha haga clic de nuevo y 'Editar Whatever.fsproj', meter el XML para tener 'x 86' (en lugar de 'x 64' o 'Cualquier CPU') como el valor de la plataforma, guardar y proyecto clic derecho y 'Recargar'.) (F # Varios errores en Beta1 conspiran para hacer que la plataforma / SolutionConfiguration-experiencia menos que óptima.)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top