Windowsモバイルデバイスは、アセンブリSystem.Windows.Forms 2.0.0.0が見つからないと述べています

StackOverflow https://stackoverflow.com/questions/3981606

  •  09-10-2019
  •  | 
  •  

質問

私は.NETプログラミングの初心者であり、.NETコンパクトフレームワーク2.0を使用してWindowsモバイルデバイス用のシンプルなWindowsフォームアプリケーションを作成しようとしています。 Booを使用して、Nantを使用してアプリケーションを構築することを開発しています。私のアプリケーションはコンパイルされますが、実行されません。デバイスでアプリケーションを起動すると、アセンブリSystem.windows.forms 2.0.0.0が見つからないことが記載されています。ただし、コンパクトフレームワークはデバイスにインストールされています。アプリケーションは、デスクトップ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開発にむしろ慣れていないので、アセンブリの参照がどのように機能するかを正確に知りません。

役に立ちましたか?

解決

Booがコンパクトフレームワークをサポートしていないことが判明しました。 boo.lang.dllアセンブリは、cfで利用できない機能を使用します。しかし、それは私が得たエラーを説明していませんが、私の最善の推測では、nantは.NET CF 2.0が「現在のフレームワーク」であるべきであると指定したにもかかわらず、BOOコンパイラが完全な.NETフレームワークからアセンブリを使用できるようにすることです。おそらく、それが問題である「現在のフレームワーク」でナントが何を意味するかについての私の理解でしょう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top