Domanda

Sono riuscito a mettere insieme un adeguato implementazione di un gioco campione in F # con XNA. Tuttavia quando provo a istanziare la mia classe di gioco derivata, il codice genera un'eccezione FileNotFound cercando di accedere al gruppo Microsoft.Xna.Framework. Perché accade questo?

Codice:

#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()

Ho aggiunto i riferimenti corretti per la via. Edit: dopo un po 'di esplorazione, ho trovato che la mia F # progetto viene compilato a 64 bit, che non funziona con le DLL XNA 32 bit. Tuttavia VS 2010 doesnt mi permetta di cambiare la piattaforma di soluzione. Come faccio a risolvere questo problema?

È stato utile?

Soluzione

Non so abbastanza di XNA, ma è 'nella GAC', o avete bisogno di copiare le DLL XNA accanto al tuo exe? Sembra forse avere Microsoft.Xna.Framework.dll accanto al tuo exe potrebbe risolverlo.

Modifica

In base a informazioni 32/64-bit, forse modificare manualmente la "" nel file .fsproj. (Tasto destro del mouse il progetto, 'Scarica progetto', quindi fare clic destro di nuovo e 'Modifica Whatever.fsproj', attizzare il XML di avere 'x 86' (piuttosto che 'x 64' o 'AnyCPU') come il valore della piattaforma, salvare e destro del progetto clic e 'Reload'.) (F # Vari bug in Beta1 cospirano per rendere la piattaforma / SolutionConfiguration-esperienza meno che ottimale.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top