2010-10-20 65 views
1

我是.NET編程的新手,我試圖爲使用.NET的Windows Mobile設備創建一個簡單的Windows窗體應用程序Compact Framework 2.0。我使用Boo開發並使用Nant構建我的應用程序。我的應用程序編譯,但它不會運行。當我在我的設備上啓動應用程序時,它聲明無法找到程序集System.Windows.Forms 2.0.0.0。 Compact Framework被安裝在設備上。該應用程序在桌面Windows安裝上運行良好。Windows Mobile設備聲明無法找到程序集System.Windows.Forms 2.0.0.0

我的源代碼:

import System.Drawing 
import System.Windows.Forms 

def Main(): 
    button = Button(Text: "Ok", Location: Point(10, 10)) 
    form = Form(Text: "Sample", FormBorderStyle: FormBorderStyle.FixedDialog,  MaximizeBox: false, MinimizeBox: false, AcceptButton: button, StartPosition: FormStartPosition.CenterScreen) 
    form.ShowDialog() 

我南特構建腳本:

<project name="Sample" default="compile"> 
    <property name="dir.build" value="./build"/> 
    <property name="nant.settings.currentframework" value="netcf-2.0"/> 

    <target name="clean"> 
     <delete dir="${dir.build}" failonerror="false"/> 
    </target> 

    <target name="compile"> 
     <mkdir dir="${dir.build}"/> 
     <booc target="exe" output="${dir.build}/Sample.exe"> 
      <sources basedir="./source"> 
       <include name="**/*.boo"/> 
      </sources> 
     </booc> 
    </target> 
</project> 

有什麼簡單多數民衆贊成出錯,這還是我誤解了有關程序集的引用的東西嗎?正如我所說的,我對.NET開發並不熟悉,也不清楚程序集引用是如何工作的。

回答

0

原來Boo不支持緊湊框架。 Boo.Lang.dll程序集使用CF中不可用的功能。但是,這並不能解釋我得到的錯誤,但我最好的猜測是,Nant允許Boo編譯器使用完整.NET框架中的程序集,即使我已經指定.NET CF 2.0應該是「當前框架」。這可能是我對Nant對「當前框架」意味着什麼的理解。

相關問題