Устройство Windows Mobile утверждает, что сборка System.Windows.Forms 2.0.0.0 не найдена - PullRequest
1 голос
/ 20 октября 2010

Я новичок в программировании на .NET и пытаюсь создать простое приложение Windows Forms для устройства Windows Mobile, используя .NET Compact Framework 2.0. Я разрабатываю с использованием Boo и использую Nant для создания своего приложения. Мое приложение компилируется, но оно не запускается. Когда я запускаю приложение на моих устройствах, он заявляет, что сборка System.Windows.Forms 2.0.0.0 не может быть найдена. Compact Framework, однако, установлен на устройстве. Приложение отлично работает на настольной установке Windows.

Мой исходный код:

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

Мой скрипт сборки Nant:

<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 и не знаю точно, как работают ссылки на сборки.

1 Ответ

0 голосов
/ 22 октября 2010

Оказывается, Boo не поддерживает компактную структуру.Сборка Boo.Lang.dll использует функциональность, недоступную в CF.Это, однако, не объясняет ошибку, которую я получил, но я думаю, что Nant позволяет компилятору Boo использовать сборки из полной платформы .NET, хотя я указал, что .NET CF 2.0 должен быть «текущей платформой».Проблема, вероятно, в моем понимании того, что Нант имеет в виду под «существующей структурой».

...