2017-02-05 9 views
0

の.exeファイルを作る私はthis tutorial以下だったが、ステップ5で、私はPowerShellで.dllファイルをインポートする必要がありました:私のVisual Studioのではなく、.dllファイル

PS> Import-Module .\bin\Debug\PowerShellModuleInCSharp.dll 

をしかし、私のVisual Studioのプログラムのみになり.exeファイル。 .exeファイルをインポートしようとしましたが、エラーが発生しました。

インポートモジュール:拡張子 '.exe'は有効なモジュール拡張ではありません。サポートされているモジュール拡張子は、 '.dll'、 '.ps1'、 '.psm1'、 '.psd1'、 '.cdxml'、 '.xaml'です。拡張子を訂正し、ファイル 'C:\ users \ wouter \ documents \ visual studio'を追加してみてください。

これは、Visual StudioでコンソールアプリケーションではなくWindowsアプリケーションを作成するためですあなたがタイプ「クラスライブラリ」であるように、あなたのプロジェクトを変更する必要が

Screenshot of debug folder content.

+4

は、クラスライブラリにプロジェクトの種類を変更します。プロジェクトプロパティ画面のドロップダウンの設定です。 – pinkfloydx33

+0

@ pinkfloydx33これは問題を解決しました。ありがとうございます –

+0

@wouterdejongは答えとして学んだことを投稿し、それを受け入れます。 –

答えて

4

いいえ、あなたはそのチュートリアルに従っていませんでした。そのチュートリアル(強調鉱山)引用:

をステップ1:あなたのVisual Studioソリューション内のVisual Studioプロジェクト

を作成し、あなたはちょうどあなたが他のコンポーネントと同じように、プロジェクトにあなたのコマンドレットを収容しますあなたは建っています。 PowerShellの場合クラスライブラリプロジェクトを作成すると、プロジェクトをビルドすると、PowerShellコマンドレットを構成するDLLが作成されます。

作成したプロジェクトは、クラスライブラリプロジェクトではありませんでした。代わりにWindowsフォームアプリケーションプロジェクトを作成したようです。

これを修正することは可能ですが、単にプロジェクトタイプを「クラスライブラリ」に変更するだけではありません。 Windows Formsアプリケーションプロジェクトテンプレートには、必要もなくしたくないものが多数含まれています。これには、必要のないアセンブリへの参照が含まれています。それはフォームを含んでいます。プログラム起動コードが含まれています。プロジェクトの種類を変更するだけであれば、そのすべてが残っているので、手動で取り除く必要があります。チュートリアルの手順に正確に従うようにして、最初からやり直すのは簡単です。

2

は、これは私のDebugフォルダがどのように見えるかです。新しいプロジェクトのためには、 "クラスライブラリ"テンプレートを選ぶことです。既存のプロジェクトの場合、プロジェクトプロパティ画面にドロップダウンリストがあり、これを[クラスライブラリ]に変更することができます。一旦それをしたら、あなたは再コンパイルする必要があります。

+0

私はあなたが本当にやり直さなければならない@hvdに同意します。しかし、クラスライブラリに変更することはできます。私はそのチュートリアルを見ていないので、どのようにすべてが関わっているのか分かりません。あなたがやり直すことができれば、本当にすべきです。そして、hvdのように、チュートリアル*にちょうど従ってください。詳細への注意は常に重要です。 – pinkfloydx33

2

ゴー>プロジェクトにプロパティとはクラスライブラリに赤で、以下に示すドロップダウンに出力タイプを変更:

enter image description here

関連する問題