2014-01-30 83 views
1

因此,我下載並安裝了Microsoft Accelerator v2以使用ParallelArrays。我在我的項目中引用它,但是當我嘗試和腳本文件從模塊執行的代碼我得到:F#Microsoft.ParallelArrays未定義

「的命名空間‘ParallelArrays’沒有定義

我按照這個帖子上的說明:

Microsoft Accelerator library with Visual Studio F#

我在我的解決方案添加到託管版本「Microsoft.Accelerator.dll」一提到我的F#項目,然後加入本地「Accelerator.dll」作爲一個項目,並設置它的'複製到輸出目錄'以便始終複製。

仍然在'#load ...'行的腳本文件中出現FSI錯誤和內聯錯誤,但解決方案生成良好,模塊文件中沒有錯誤。

關於我失蹤的任何想法?我相信這是愚蠢的。

感謝, 賈斯汀

UPDATE

我試圖mydogisbox的建議,這得到了上述擺脫錯誤的,但現在當我運行在.fsx文件中我得到這個錯誤,而不是代碼:

--> Referenced 'F:\Work\GitHub\qf-sharp\qf-sharp\bin\Debug\Microsoft.Accelerator.dll' (file may be locked by F# Interactive process) 

[Loading F:\Work\GitHub\qf-sharp\qf-sharp\MonteCarloGPU.fs] 


error FS0192: internal error: F:\Work\GitHub\qf-sharp\qf-sharp\Accelerator.dll: bad cli header, rva 0 

UPDATE 2

那麼壞頭錯誤dissapeared,但現在我得到這個代替:

Microsoft.ParallelArrays.AcceleratorException: Failure to create a DirectX 9 device. 
    at Microsoft.ParallelArrays.ParallelArrays.ThrowNativeAcceleratorException() 
    at Microsoft.ParallelArrays.DX9Target..ctor() 
    at <StartupCode$FSI_0002>[email protected]() in F:\Work\GitHub\qf- sharp\qf-sharp\MonteCarloGPU.fs:line 14 
Stopped due to error 

我發現這個線程MSDN但是建議作爲上線的修復,甚至幾乎沒有涉及到這個問題的答案。

http://social.msdn.microsoft.com/Forums/vstudio/en-US/98600646-0345-4f62-a6c5-f03ac9c77179/ms-accelerator?forum=csharpgeneral

我的Direct X的版本是11,和我想象就足夠了,不過我試過但在安裝DX9,它告訴我,一個新版本被檢測到,因此傾斜安裝。

回答

2

有一些特殊的指令用於引用來自fsi的dll。 #load指令僅加載.fs文件。您需要使用#r指令來引用該文件。您可以使用文件的完整路徑,也可以使用#I來包含文件的路徑。更多詳情here。請記住,fsi完全獨立於您的項目,因此您的項目中的所有引用都必須在fsi中進行復制,以便訪問相同的類型。

+0

謝謝!我要試試這個:) – JustinMoser

+0

我也跟着你的建議,我用: '#r組成的「bin \調試\ Microsoft.Accelerator.dll」' 然而,以前的錯誤已經走了,但現在我得到錯誤的更新我的問題上面。 – JustinMoser

+0

你試過重啓VS嗎?這聽起來像是在某個地方使用DLL。重新啓動可能會釋放它。 – mydogisbox