1)NCVをダウンロードして展開しておく
2)VC#起動!
3)VC#でファイル>新しいプロジェクトを開く
4)クラスライブラリを選び名前を決めて[OK]を押す
名前は今回はそのまま「ClassLibrary1」にしときます
5)次の工程の為にいったんプロジェクトを保存します
VC#でファイル>すべてを保存
そのまま[上書き保存]を押す
6)VC#でプロジェクト>ClassLibrary1のプロパティを開く
※上で決めたクラスライブラリ名になります
アプリケーション>対象のフレームワークを
「.NET Framework 3.5」にする
警告が出るので[はい]を押す
※Microsoft.Csharpの警告がある場合は・・・
VC#で表示>ソリューション エクスプローラを開く
※「ソリューション エクスプローラを開く」が「その他のウインドウ」の中にある場合があります
参照設定の▷(三角マーク)を押して一覧を表示する
エラーしているものを右クリックして削除
7)NCVのプラグインのライブラリを参照する
VC#でプロジェクト>参照の追加
参照タブより最初に展開したNCVのところまで行く
NicoLibrary.dllとPiugin.dllを選んで[OK]押す
8)プラグインのインターフェイスを実装する
「public class Class1」のところに「:Plugin.IPlugin」と書く
と青い四角が出るのでそのまま「インターファイス'Plugin.IPlugin'を実装します」を押してVC#に任せる
9)ソースの説明
※わかりやすいように順番を入れ替えました
※get,setアクセッサについては自分で調べてください
ホストをもらう変数を作る
インターフェイスの実装と書き換え完了!
※プラグイン自体の内容を書いてないので何も起こりません
10)ビルド!(今作ったものをdllファイルとして書き出す)
VC#でデバック>ソリューションのビルド
先ほど保存したところに「ClassLibrary1.dll」が新しくできています
Projects\ClassLibrary1\ClassLibrary1\bin\Release\ClassLibrary1.dll
11)NCVで確認!
「ClassLibrary1.dll」をNCVのpluginsフォルダに入れて起動
プラグインに「キリ番ゲッター」が出てくれば成功です
※クリックしても何も出ませんし何もしません
2)VC#起動!
3)VC#でファイル>新しいプロジェクトを開く
4)クラスライブラリを選び名前を決めて[OK]を押す
名前は今回はそのまま「ClassLibrary1」にしときます
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ClassLibrary1 { public class Class1 { } }
5)次の工程の為にいったんプロジェクトを保存します
VC#でファイル>すべてを保存
そのまま[上書き保存]を押す
6)VC#でプロジェクト>ClassLibrary1のプロパティを開く
※上で決めたクラスライブラリ名になります
アプリケーション>対象のフレームワークを
「.NET Framework 3.5」にする
警告が出るので[はい]を押す
※Microsoft.Csharpの警告がある場合は・・・
VC#で表示>ソリューション エクスプローラを開く
※「ソリューション エクスプローラを開く」が「その他のウインドウ」の中にある場合があります
参照設定の▷(三角マーク)を押して一覧を表示する
エラーしているものを右クリックして削除
7)NCVのプラグインのライブラリを参照する
VC#でプロジェクト>参照の追加
参照タブより最初に展開したNCVのところまで行く
NicoLibrary.dllとPiugin.dllを選んで[OK]押す
8)プラグインのインターフェイスを実装する
「public class Class1」のところに「:Plugin.IPlugin」と書く
と青い四角が出るのでそのまま「インターファイス'Plugin.IPlugin'を実装します」を押してVC#に任せる
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ClassLibrary1 { public class Class1 : Plugin.IPlugin { public void AutoRun() { throw new NotImplementedException(); } public string Description { get { throw new NotImplementedException(); } } public Plugin.IPluginHost Host { get { throw new NotImplementedException(); } set { throw new NotImplementedException(); } } public bool IsAutoRun { get { throw new NotImplementedException(); } } public string Name { get { throw new NotImplementedException(); } } public void Run() { throw new NotImplementedException(); } public string Version { get { throw new NotImplementedException(); } } } }
9)ソースの説明
※わかりやすいように順番を入れ替えました
※get,setアクセッサについては自分で調べてください
ホストをもらう変数を作る
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ClassLibrary1 { public class Class1 : Plugin.IPlugin { //ホストをもらう変数 Plugin.IPluginHost host = null; public Plugin.IPluginHost Host { get { throw new NotImplementedException(); } set { throw new NotImplementedException(); } } public string Name { get { throw new NotImplementedException(); } } public string Version { get { throw new NotImplementedException(); } } public string Description { get { throw new NotImplementedException(); } } public void Run() { throw new NotImplementedException(); } public bool IsAutoRun { get { throw new NotImplementedException(); } } public void AutoRun() { throw new NotImplementedException(); } } }一つ一つの説明と変更
インターフェイスの実装と書き換え完了!
※プラグイン自体の内容を書いてないので何も起こりません
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ClassLibrary1 { public class Class1 : Plugin.IPlugin { //ホストをもらう変数 Plugin.IPluginHost host = null; /// <summary> /// プラグインのホスト /// </summary> public Plugin.IPluginHost Host { get { return this.host; } set { this.host = value; } } /// <summary> /// プラグインの名前 /// </summary> public string Name { get { return "キリ番ゲッター"; } } /// <summary> /// プラグインのバージョン /// </summary> public string Version { get { return "1.0"; } } /// <summary> /// プラグインの説明 /// </summary> public string Description { get { return "キリ番にコメントを投稿する"; } } /// <summary> /// プラグイン実行時に呼ばれる /// </summary> public void Run() { //throw new NotImplementedException(); } /// <summary> /// NCVを起動したときに「AutoRun()」を実行するか /// </summary> public bool IsAutoRun { get { return false; } } /// <summary> /// IsAutoRunがtrueの時NCVを実行したときに呼ばれる /// </summary> public void AutoRun() { //throw new NotImplementedException(); } } }
10)ビルド!(今作ったものをdllファイルとして書き出す)
VC#でデバック>ソリューションのビルド
先ほど保存したところに「ClassLibrary1.dll」が新しくできています
Projects\ClassLibrary1\ClassLibrary1\bin\Release\ClassLibrary1.dll
11)NCVで確認!
「ClassLibrary1.dll」をNCVのpluginsフォルダに入れて起動
プラグインに「キリ番ゲッター」が出てくれば成功です
※クリックしても何も出ませんし何もしません