├── README.md
├── Release
└── UnityDLLCreater_rev1.zip
├── UnityDLLCreater
├── .vs
│ └── UnityDLLCreater
│ │ └── v15
│ │ └── .suo
├── App.config
├── MainForm.Designer.cs
├── MainForm.cs
├── MainForm.resx
├── Program.cs
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── UnityDLLCreater.csproj
├── UnityDLLCreater.csproj.user
├── UnityDLLCreater.ico
├── bin
│ └── Release
│ │ ├── Sample
│ │ └── TestLib
│ │ │ ├── .vs
│ │ │ └── TestLib
│ │ │ │ └── v15
│ │ │ │ └── .suo
│ │ │ ├── Common.cs
│ │ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ │ └── TestLib.csproj
│ │ ├── UnityDLLCreater.exe
│ │ ├── UnityDLLCreater.exe.config
│ │ └── readme.txt
└── obj
│ ├── Debug
│ ├── CoreCompileInputs.cache
│ ├── DesignTimeResolveAssemblyReferences.cache
│ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ ├── UnityDLLCreater.MainForm.resources
│ ├── UnityDLLCreater.Properties.Resources.resources
│ ├── UnityDLLCreater.csproj.FileListAbsolute.txt
│ ├── UnityDLLCreater.csproj.GenerateResource.Cache
│ ├── UnityDLLCreater.csprojResolveAssemblyReference.cache
│ ├── UnityDLLCreater.exe
│ └── UnityDLLCreater.pdb
│ └── Release
│ ├── CoreCompileInputs.cache
│ ├── DesignTimeResolveAssemblyReferences.cache
│ ├── DesignTimeResolveAssemblyReferencesInput.cache
│ ├── TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
│ ├── TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
│ ├── TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
│ ├── UnityDLLCreater.MainForm.resources
│ ├── UnityDLLCreater.Properties.Resources.resources
│ ├── UnityDLLCreater.csproj.FileListAbsolute.txt
│ ├── UnityDLLCreater.csproj.GenerateResource.Cache
│ ├── UnityDLLCreater.exe
│ └── UnityDLLCreater.pdb
└── sample.png
/README.md:
--------------------------------------------------------------------------------
1 | ## UnityDLLCreater
2 | 
3 | Unityに限ったことではないですが、プログラムが肥大化するとビルドに時間がかかり、開発効率が低下します。
4 | そこで、事前にいくつのソースファイルをDLLとして生成することで、ビルド時間を短縮し、開発効率を向上させることができます。
5 | また、頻繁に使用する関数などは1つのDLLにモジュールとしてまとめることで、開発のたびに車輪の再発明をしなくて済みます。
6 |
7 |
8 | # 使い方
9 | ## ソースファイルを作成する。
10 | ライブラリ化するソースファイルを作成します
11 |
12 | ## UnityDLLCreater.exeを実行する
13 | 初回起動時にUnityがインストールされているフォルダが聞かれますので、Unityのフォルダを指定してください(初期設定であればPrograms Filesに入ってると思います)
14 | ちなみにこの設定は初回起動時のみで、以降表示されません。
15 |
16 | ## 変換するスクリプトと出力先を指定する。
17 | 正しくフォルダが指定されるとウィンドウが立ち上がり、「smcs.bat」、「UnityEngine.dll」、「UnityEditor.dll」の3つに「Succes」が表示されます。
18 | この状態で「変換元スクリプト」と「出力先」を指定します。今回は「testlib.dll」というDLLを生成します。
19 | ※変換元スクリプトは"*.cs"ファイルが存在するディレクトリを指定してください。
20 | 指定が完了したら「DLL生成」をクリックしてください。ビルド:Succesが表示されていれば無事にDLLが生成されています。「出力先」をクリックしてDLLの出力先フォルダを開きます。
21 |
22 | ## 出力したDLLをアセットフォルダに入れる。
23 | 生成されたDLL(testlib.dll)はアセットフォルダ配下にコピーすることで、使用できるようになります。
24 | ちなみにUnityではアセットフォルダ配下にあるdllは自動で参照設定が行われるため、コピーするだけで使用可能な状態になります。この状態で今回作成したtestlib.dllが使える状態になります。
25 |
--------------------------------------------------------------------------------
/Release/UnityDLLCreater_rev1.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/Release/UnityDLLCreater_rev1.zip
--------------------------------------------------------------------------------
/UnityDLLCreater/.vs/UnityDLLCreater/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/.vs/UnityDLLCreater/v15/.suo
--------------------------------------------------------------------------------
/UnityDLLCreater/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | \Editor\Data\Mono\bin\smcs.bat
24 |
25 |
26 | \Editor\Data\Managed\UnityEngine.dll
27 |
28 |
29 | \Editor\Data\Managed\UnityEditor.dll
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/UnityDLLCreater/MainForm.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace UnityDLLCreater
2 | {
3 | partial class MainForm
4 | {
5 | ///
6 | /// 必要なデザイナー変数です。
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// 使用中のリソースをすべてクリーンアップします。
12 | ///
13 | /// マネージ リソースを破棄する場合は true を指定し、その他の場合は false を指定します。
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows フォーム デザイナーで生成されたコード
24 |
25 | ///
26 | /// デザイナー サポートに必要なメソッドです。このメソッドの内容を
27 | /// コード エディターで変更しないでください。
28 | ///
29 | private void InitializeComponent()
30 | {
31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
32 | this.label1 = new System.Windows.Forms.Label();
33 | this.label2 = new System.Windows.Forms.Label();
34 | this.textBox_Import = new System.Windows.Forms.TextBox();
35 | this.textBox_Export = new System.Windows.Forms.TextBox();
36 | this.buttonInport = new System.Windows.Forms.Button();
37 | this.buttonExport = new System.Windows.Forms.Button();
38 | this.buttonCreate = new System.Windows.Forms.Button();
39 | this.groupBox1 = new System.Windows.Forms.GroupBox();
40 | this.buttonEditor = new System.Windows.Forms.Button();
41 | this.labelFoundEditor = new System.Windows.Forms.Label();
42 | this.labelFoundEngine = new System.Windows.Forms.Label();
43 | this.labelFound_smcs = new System.Windows.Forms.Label();
44 | this.label5 = new System.Windows.Forms.Label();
45 | this.label4 = new System.Windows.Forms.Label();
46 | this.label3 = new System.Windows.Forms.Label();
47 | this.buttonOpenExp = new System.Windows.Forms.Button();
48 | this.groupBox2 = new System.Windows.Forms.GroupBox();
49 | this.textBoxLog = new System.Windows.Forms.TextBox();
50 | this.label6 = new System.Windows.Forms.Label();
51 | this.labelBuild = new System.Windows.Forms.Label();
52 | this.groupBox1.SuspendLayout();
53 | this.groupBox2.SuspendLayout();
54 | this.SuspendLayout();
55 | //
56 | // label1
57 | //
58 | this.label1.AutoSize = true;
59 | this.label1.Location = new System.Drawing.Point(21, 23);
60 | this.label1.Name = "label1";
61 | this.label1.Size = new System.Drawing.Size(88, 12);
62 | this.label1.TabIndex = 0;
63 | this.label1.Text = "変換元スクリプト:";
64 | //
65 | // label2
66 | //
67 | this.label2.AutoSize = true;
68 | this.label2.Location = new System.Drawing.Point(41, 58);
69 | this.label2.Name = "label2";
70 | this.label2.Size = new System.Drawing.Size(67, 12);
71 | this.label2.TabIndex = 1;
72 | this.label2.Text = "DLL出力先:";
73 | //
74 | // textBox_Import
75 | //
76 | this.textBox_Import.Location = new System.Drawing.Point(115, 20);
77 | this.textBox_Import.Name = "textBox_Import";
78 | this.textBox_Import.Size = new System.Drawing.Size(289, 19);
79 | this.textBox_Import.TabIndex = 2;
80 | //
81 | // textBox_Export
82 | //
83 | this.textBox_Export.Location = new System.Drawing.Point(115, 55);
84 | this.textBox_Export.Name = "textBox_Export";
85 | this.textBox_Export.Size = new System.Drawing.Size(289, 19);
86 | this.textBox_Export.TabIndex = 3;
87 | //
88 | // buttonInport
89 | //
90 | this.buttonInport.Location = new System.Drawing.Point(410, 18);
91 | this.buttonInport.Name = "buttonInport";
92 | this.buttonInport.Size = new System.Drawing.Size(75, 23);
93 | this.buttonInport.TabIndex = 4;
94 | this.buttonInport.Text = "参照";
95 | this.buttonInport.UseVisualStyleBackColor = true;
96 | this.buttonInport.Click += new System.EventHandler(this.buttonInport_Click);
97 | //
98 | // buttonExport
99 | //
100 | this.buttonExport.Location = new System.Drawing.Point(410, 53);
101 | this.buttonExport.Name = "buttonExport";
102 | this.buttonExport.Size = new System.Drawing.Size(75, 23);
103 | this.buttonExport.TabIndex = 5;
104 | this.buttonExport.Text = "参照";
105 | this.buttonExport.UseVisualStyleBackColor = true;
106 | this.buttonExport.Click += new System.EventHandler(this.buttonExport_Click);
107 | //
108 | // buttonCreate
109 | //
110 | this.buttonCreate.Location = new System.Drawing.Point(366, 147);
111 | this.buttonCreate.Name = "buttonCreate";
112 | this.buttonCreate.Size = new System.Drawing.Size(100, 38);
113 | this.buttonCreate.TabIndex = 6;
114 | this.buttonCreate.Text = "DLL生成";
115 | this.buttonCreate.UseVisualStyleBackColor = true;
116 | this.buttonCreate.Click += new System.EventHandler(this.buttonCreate_Click);
117 | //
118 | // groupBox1
119 | //
120 | this.groupBox1.Controls.Add(this.buttonEditor);
121 | this.groupBox1.Controls.Add(this.labelFoundEditor);
122 | this.groupBox1.Controls.Add(this.labelFoundEngine);
123 | this.groupBox1.Controls.Add(this.labelFound_smcs);
124 | this.groupBox1.Controls.Add(this.label5);
125 | this.groupBox1.Controls.Add(this.label4);
126 | this.groupBox1.Controls.Add(this.label3);
127 | this.groupBox1.Location = new System.Drawing.Point(12, 93);
128 | this.groupBox1.Name = "groupBox1";
129 | this.groupBox1.Size = new System.Drawing.Size(321, 115);
130 | this.groupBox1.TabIndex = 7;
131 | this.groupBox1.TabStop = false;
132 | this.groupBox1.Text = "必須ファイル";
133 | //
134 | // buttonEditor
135 | //
136 | this.buttonEditor.Location = new System.Drawing.Point(219, 80);
137 | this.buttonEditor.Name = "buttonEditor";
138 | this.buttonEditor.Size = new System.Drawing.Size(75, 23);
139 | this.buttonEditor.TabIndex = 8;
140 | this.buttonEditor.Text = "再検索";
141 | this.buttonEditor.UseVisualStyleBackColor = true;
142 | this.buttonEditor.Click += new System.EventHandler(this.buttonResearch_Click);
143 | //
144 | // labelFoundEditor
145 | //
146 | this.labelFoundEditor.AutoSize = true;
147 | this.labelFoundEditor.Font = new System.Drawing.Font("MS UI Gothic", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
148 | this.labelFoundEditor.ForeColor = System.Drawing.Color.Red;
149 | this.labelFoundEditor.Location = new System.Drawing.Point(112, 85);
150 | this.labelFoundEditor.Name = "labelFoundEditor";
151 | this.labelFoundEditor.Size = new System.Drawing.Size(70, 12);
152 | this.labelFoundEditor.TabIndex = 13;
153 | this.labelFoundEditor.Text = ":Not Found";
154 | //
155 | // labelFoundEngine
156 | //
157 | this.labelFoundEngine.AutoSize = true;
158 | this.labelFoundEngine.Font = new System.Drawing.Font("MS UI Gothic", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
159 | this.labelFoundEngine.ForeColor = System.Drawing.Color.Red;
160 | this.labelFoundEngine.Location = new System.Drawing.Point(112, 54);
161 | this.labelFoundEngine.Name = "labelFoundEngine";
162 | this.labelFoundEngine.Size = new System.Drawing.Size(70, 12);
163 | this.labelFoundEngine.TabIndex = 12;
164 | this.labelFoundEngine.Text = ":Not Found";
165 | //
166 | // labelFound_smcs
167 | //
168 | this.labelFound_smcs.AutoSize = true;
169 | this.labelFound_smcs.Font = new System.Drawing.Font("MS UI Gothic", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
170 | this.labelFound_smcs.ForeColor = System.Drawing.Color.Red;
171 | this.labelFound_smcs.Location = new System.Drawing.Point(112, 24);
172 | this.labelFound_smcs.Name = "labelFound_smcs";
173 | this.labelFound_smcs.Size = new System.Drawing.Size(70, 12);
174 | this.labelFound_smcs.TabIndex = 11;
175 | this.labelFound_smcs.Text = ":Not Found";
176 | //
177 | // label5
178 | //
179 | this.label5.AutoSize = true;
180 | this.label5.Location = new System.Drawing.Point(18, 85);
181 | this.label5.Name = "label5";
182 | this.label5.Size = new System.Drawing.Size(76, 12);
183 | this.label5.TabIndex = 10;
184 | this.label5.Text = "UnityEditor.dll";
185 | //
186 | // label4
187 | //
188 | this.label4.AutoSize = true;
189 | this.label4.Location = new System.Drawing.Point(18, 54);
190 | this.label4.Name = "label4";
191 | this.label4.Size = new System.Drawing.Size(80, 12);
192 | this.label4.TabIndex = 9;
193 | this.label4.Text = "UnityEngine.dll";
194 | //
195 | // label3
196 | //
197 | this.label3.AutoSize = true;
198 | this.label3.Location = new System.Drawing.Point(18, 24);
199 | this.label3.Name = "label3";
200 | this.label3.Size = new System.Drawing.Size(50, 12);
201 | this.label3.TabIndex = 8;
202 | this.label3.Text = "smcs.bat";
203 | //
204 | // buttonOpenExp
205 | //
206 | this.buttonOpenExp.Location = new System.Drawing.Point(366, 104);
207 | this.buttonOpenExp.Name = "buttonOpenExp";
208 | this.buttonOpenExp.Size = new System.Drawing.Size(100, 25);
209 | this.buttonOpenExp.TabIndex = 8;
210 | this.buttonOpenExp.Text = "出力先";
211 | this.buttonOpenExp.UseVisualStyleBackColor = true;
212 | this.buttonOpenExp.Click += new System.EventHandler(this.buttonOpenExp_Click);
213 | //
214 | // groupBox2
215 | //
216 | this.groupBox2.Controls.Add(this.textBoxLog);
217 | this.groupBox2.Location = new System.Drawing.Point(12, 214);
218 | this.groupBox2.Name = "groupBox2";
219 | this.groupBox2.Size = new System.Drawing.Size(473, 196);
220 | this.groupBox2.TabIndex = 9;
221 | this.groupBox2.TabStop = false;
222 | this.groupBox2.Text = "ログ";
223 | //
224 | // textBoxLog
225 | //
226 | this.textBoxLog.Location = new System.Drawing.Point(6, 18);
227 | this.textBoxLog.Multiline = true;
228 | this.textBoxLog.Name = "textBoxLog";
229 | this.textBoxLog.Size = new System.Drawing.Size(461, 171);
230 | this.textBoxLog.TabIndex = 3;
231 | //
232 | // label6
233 | //
234 | this.label6.AutoSize = true;
235 | this.label6.Location = new System.Drawing.Point(364, 196);
236 | this.label6.Name = "label6";
237 | this.label6.Size = new System.Drawing.Size(32, 12);
238 | this.label6.TabIndex = 14;
239 | this.label6.Text = "ビルド";
240 | //
241 | // labelBuild
242 | //
243 | this.labelBuild.AutoSize = true;
244 | this.labelBuild.Font = new System.Drawing.Font("MS UI Gothic", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(128)));
245 | this.labelBuild.ForeColor = System.Drawing.Color.Red;
246 | this.labelBuild.Location = new System.Drawing.Point(394, 196);
247 | this.labelBuild.Name = "labelBuild";
248 | this.labelBuild.Size = new System.Drawing.Size(60, 12);
249 | this.labelBuild.TabIndex = 15;
250 | this.labelBuild.Text = " ";
251 | //
252 | // MainForm
253 | //
254 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
255 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
256 | this.ClientSize = new System.Drawing.Size(495, 422);
257 | this.Controls.Add(this.labelBuild);
258 | this.Controls.Add(this.label6);
259 | this.Controls.Add(this.groupBox2);
260 | this.Controls.Add(this.buttonOpenExp);
261 | this.Controls.Add(this.groupBox1);
262 | this.Controls.Add(this.buttonCreate);
263 | this.Controls.Add(this.buttonExport);
264 | this.Controls.Add(this.buttonInport);
265 | this.Controls.Add(this.textBox_Export);
266 | this.Controls.Add(this.textBox_Import);
267 | this.Controls.Add(this.label2);
268 | this.Controls.Add(this.label1);
269 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
270 | this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
271 | this.MaximizeBox = false;
272 | this.Name = "MainForm";
273 | this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
274 | this.Text = "UnityDLLCreater";
275 | this.Load += new System.EventHandler(this.MainForm_Load);
276 | this.groupBox1.ResumeLayout(false);
277 | this.groupBox1.PerformLayout();
278 | this.groupBox2.ResumeLayout(false);
279 | this.groupBox2.PerformLayout();
280 | this.ResumeLayout(false);
281 | this.PerformLayout();
282 |
283 | }
284 |
285 | #endregion
286 |
287 | private System.Windows.Forms.Label label1;
288 | private System.Windows.Forms.Label label2;
289 | private System.Windows.Forms.TextBox textBox_Import;
290 | private System.Windows.Forms.TextBox textBox_Export;
291 | private System.Windows.Forms.Button buttonInport;
292 | private System.Windows.Forms.Button buttonExport;
293 | private System.Windows.Forms.Button buttonCreate;
294 | private System.Windows.Forms.GroupBox groupBox1;
295 | private System.Windows.Forms.Label labelFound_smcs;
296 | private System.Windows.Forms.Label label5;
297 | private System.Windows.Forms.Label label4;
298 | private System.Windows.Forms.Label label3;
299 | private System.Windows.Forms.Button buttonEditor;
300 | private System.Windows.Forms.Label labelFoundEditor;
301 | private System.Windows.Forms.Label labelFoundEngine;
302 | private System.Windows.Forms.Button buttonOpenExp;
303 | private System.Windows.Forms.GroupBox groupBox2;
304 | private System.Windows.Forms.TextBox textBoxLog;
305 | private System.Windows.Forms.Label label6;
306 | private System.Windows.Forms.Label labelBuild;
307 | }
308 | }
309 |
310 |
--------------------------------------------------------------------------------
/UnityDLLCreater/MainForm.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Data;
5 | using System.Drawing;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using System.Windows.Forms;
10 | using System.IO;
11 |
12 | namespace UnityDLLCreater
13 | {
14 | public partial class MainForm : Form
15 | {
16 | string g_unityPath; //Unity格納先
17 | string g_smcsPath; //smcs.batの格納先
18 | string g_unityEnginePath; //UnityEngine.dllの格納先
19 | string g_unityEditorPath; //UnityEditor.dllの格納先
20 | string g_default_Export; //初期出力先
21 | string g_default_Import; //初期スクリプトディレクトリ
22 | string g_buidbat; //ビルド用のバッチファイル出力先
23 | bool g_dllFileOk; //smcs,unityengine,unityeditorがすべて設定されているか
24 |
25 | const string FILENAME_SMCS = "smcs.bat";
26 | const string FILENAME_UNITYENGINE = "UnityEngine.dll";
27 | const string FILENAME_UNITYEDITOR = "UnityEditor.dll";
28 | const string FOUND_NO = ": Not Found";
29 | const string FOUND_OK = ": Succes";
30 |
31 | enum FILE
32 | {
33 | SMCS,
34 | UNITY_ENGINE,
35 | UNITY_EDITOR,
36 | }
37 |
38 | enum DIALOG_MODE
39 | {
40 | IMPORT,
41 | EXPORT,
42 | }
43 |
44 | ///
45 | /// 指定したファイルの有無状態を変更する。
46 | ///
47 | /// 対象ファイル
48 | /// 有無
49 | private void FoundTextChange(FILE target, bool check)
50 | {
51 | try
52 | {
53 | Color color = check == true ? Color.Blue : Color.Red;
54 | string Str = check == true ? FOUND_OK : FOUND_NO;
55 | switch (target)
56 | {
57 | case FILE.SMCS:
58 | this.labelFound_smcs.Text = Str;
59 | this.labelFound_smcs.ForeColor = color;
60 | break;
61 | case FILE.UNITY_EDITOR:
62 | this.labelFoundEditor.Text = Str;
63 | this.labelFoundEditor.ForeColor = color;
64 | break;
65 | case FILE.UNITY_ENGINE:
66 | this.labelFoundEngine.Text = Str;
67 | this.labelFoundEngine.ForeColor = color;
68 | break;
69 | }
70 | }
71 | catch (Exception ex)
72 | {
73 | MessageBox.Show(ex.Message);
74 | }
75 | }
76 |
77 | public MainForm()
78 | {
79 | try
80 | {
81 | g_unityPath = Properties.Settings.Default.UNITY_PATH;
82 | InitializeComponent();
83 | }catch (Exception ex)
84 | {
85 | MessageBox.Show(ex.Message);
86 | }
87 | }
88 |
89 | ///
90 | /// Unityフォルダから必須ファイル3つを検索して存在するか確認する
91 | ///
92 | /// Unityインストール先
93 | /// 検索結果
94 | private bool DLLSeach(string path)
95 | {
96 | bool result = true;
97 | try
98 | {
99 | g_dllFileOk = false;
100 | g_smcsPath = "";
101 | g_unityEditorPath = "";
102 | g_unityEnginePath = "";
103 | string[] serach = new string[] { "", "", "" };
104 | string errStr = "";
105 | string smcs_path = Properties.Settings.Default.PATH_SMCS;
106 | string engine_path = Properties.Settings.Default.PATH_UNITYENGINE;
107 | string editor_path = Properties.Settings.Default.PATH_UNITYEDITOR;
108 | bool bSmcs = (System.IO.File.Exists(path + smcs_path));
109 | bool bEditor = (System.IO.File.Exists(path + editor_path));
110 | bool bEngine = (System.IO.File.Exists(path + engine_path));
111 |
112 | //検索結果
113 | if (!bEditor)
114 | {
115 | errStr += "UnityEditor.dll\n\r";
116 | result = false;
117 | }
118 | else
119 | {
120 | g_unityEditorPath = path + editor_path;
121 | }
122 |
123 | if (!bEngine)
124 | {
125 | errStr += "UnityEngine.dll\n\r";
126 | result = false;
127 | }
128 | else
129 | {
130 | g_unityEnginePath = path + engine_path;
131 | }
132 |
133 | if (!bSmcs)
134 | {
135 | errStr += "smcs.bat\n\r";
136 | result = false;
137 | }
138 | else
139 | {
140 | g_smcsPath = path + smcs_path;
141 | }
142 |
143 | //ラベルに反映
144 | FoundTextChange(FILE.SMCS, bSmcs);
145 | FoundTextChange(FILE.UNITY_EDITOR, bEditor);
146 | FoundTextChange(FILE.UNITY_ENGINE, bEngine);
147 |
148 | if (result == false)
149 | {
150 | MessageBox.Show("以下のファイルが見つかりませんでした。\n\r" + errStr,
151 | "エラー",
152 | MessageBoxButtons.OK,
153 | MessageBoxIcon.Error);
154 | }
155 | else
156 | {
157 | MessageBox.Show("必須ファイルが見つかりました。","確認");
158 | }
159 | }
160 | catch (Exception ex)
161 | {
162 | MessageBox.Show(ex.Message);
163 | }
164 | g_dllFileOk = result;
165 | return result;
166 | }
167 |
168 | ///
169 | /// Unityのインストールフォルダを指定させる。
170 | ///
171 | private void UnityPathSet()
172 | {
173 | try
174 | {
175 | MessageBox.Show("Unityをインストールしているパスを指定してください。");
176 | FolderBrowserDialog fbd = new FolderBrowserDialog();
177 | fbd.Description = "フォルダを指定してください。";
178 | fbd.RootFolder = Environment.SpecialFolder.Desktop;
179 | //ダイアログを表示する
180 | if (fbd.ShowDialog(this) == DialogResult.OK)
181 | {
182 | Properties.Settings.Default.UNITY_PATH = fbd.SelectedPath;
183 | g_unityPath = fbd.SelectedPath;
184 | Properties.Settings.Default.Save();
185 | DLLSeach(fbd.SelectedPath);
186 | }
187 | }
188 | catch(Exception ex)
189 | {
190 | MessageBox.Show(ex.Message);
191 | }
192 | }
193 |
194 | private void MainForm_Load(object sender, EventArgs e)
195 | {
196 | g_default_Export = Properties.Settings.Default.DEFAULT_EXP;
197 | g_unityPath = Properties.Settings.Default.UNITY_PATH;
198 | g_default_Import = Properties.Settings.Default.DEFAULT_IMP;
199 | if (g_unityPath.Length <= 0)
200 | {
201 | UnityPathSet();
202 | }else
203 | {
204 | DLLSeach(g_unityPath);
205 | }
206 | }
207 |
208 | ///
209 | /// ファイル or ディレクトリの選択を行う。
210 | ///
211 | /// OpenMode
212 | /// 結果
213 | private string SetFileNameDialog(DIALOG_MODE mode)
214 | {
215 | string result = "";
216 | try
217 | {
218 | if (mode == DIALOG_MODE.EXPORT)
219 | {
220 | //OpenFileDialogクラスのインスタンスを作成
221 | OpenFileDialog ofd = new OpenFileDialog();
222 |
223 | //はじめのファイル名を指定する
224 | //はじめに表示されるフォルダを指定する
225 | //指定しない(空の文字列)の時は、現在のディレクトリが表示される
226 | //[ファイルの種類]ではじめに選択されるものを指定する
227 | //2番目の「すべてのファイル」が選択されているようにする
228 | ofd.FilterIndex = 1;
229 | ofd.Title = "DLLの出力先を選択してください";
230 | //[ファイルの種類]に表示される選択肢を指定する
231 | //指定しないとすべてのファイルが表示される
232 | ofd.Filter = "DLLファイル(*.dll)|*.dll";
233 | if (g_default_Export.Length > 0)
234 | ofd.InitialDirectory = g_default_Export;
235 |
236 | //ダイアログボックスを閉じる前に現在のディレクトリを復元するようにする
237 | ofd.RestoreDirectory = true;
238 | //存在しないファイルの名前が指定されたとき警告を表示する
239 | //デフォルトでTrueなので指定する必要はない
240 | ofd.CheckFileExists = false;
241 | //存在しないパスが指定されたとき警告を表示する
242 | //デフォルトでTrueなので指定する必要はない
243 | ofd.CheckPathExists = false;
244 |
245 | //ダイアログを表示する
246 | if (ofd.ShowDialog() == DialogResult.OK)
247 | {
248 | result = ofd.FileName;
249 | }
250 | } else
251 | {
252 | //FolderBrowserDialogクラスのインスタンスを作成
253 | FolderBrowserDialog fbd = new FolderBrowserDialog();
254 |
255 | //上部に表示する説明テキストを指定する
256 | fbd.Description = "スクリプトが保存されているフォルダを指定してください。";
257 | //ルートフォルダを指定する
258 | //デフォルトでDesktop
259 |
260 | fbd.RootFolder = Environment.SpecialFolder.MyComputer;
261 | //最初に選択するフォルダを指定する
262 | //RootFolder以下にあるフォルダである必要がある
263 | if (g_default_Import.Length > 0)
264 | fbd.SelectedPath = g_default_Import;
265 | //ユーザーが新しいフォルダを作成できるようにする
266 | //デフォルトでTrue
267 | fbd.ShowNewFolderButton = true;
268 |
269 | //ダイアログを表示する
270 | if (fbd.ShowDialog(this) == DialogResult.OK)
271 | {
272 | //選択されたフォルダを表示する
273 | result = fbd.SelectedPath;
274 | }
275 | }
276 | if(mode == DIALOG_MODE.EXPORT)
277 | {
278 | Properties.Settings.Default.DEFAULT_EXP = System.IO.Directory.GetParent(result).FullName;
279 | g_default_Export = System.IO.Directory.GetParent(result).FullName;
280 | }
281 | else
282 | {
283 | Properties.Settings.Default.DEFAULT_IMP = result;
284 | g_default_Import = result;
285 | }
286 | Properties.Settings.Default.Save();
287 | }
288 | catch (Exception ex)
289 | {
290 | MessageBox.Show(ex.Message);
291 | }
292 | return result;
293 | }
294 |
295 | ///
296 | /// ビルド用のバッチファイルを生成する。
297 | ///
298 | /// 生成結果
299 | private bool CreateBat()
300 | {
301 | try
302 | {
303 | string db = "\"";
304 | string exp = this.textBox_Export.Text;
305 | string imp = this.textBox_Import.Text;
306 | string batFileName = imp + @"\build.bat";
307 | string batScript = db + g_smcsPath + db + " -r:" + db + g_unityEnginePath + db + " -r:" + db + g_unityEditorPath + db + " -target:library -out:" + db + exp + db + " " + db + imp +"\\*.cs" + db;
308 | StreamWriter sr = new StreamWriter((new FileStream(batFileName, FileMode.Create)), Encoding.Default); //書込みモード
309 |
310 | sr.Write(batScript);
311 | sr.Close();
312 | g_buidbat = batFileName;
313 | return true;
314 | }
315 | catch (Exception ex)
316 | {
317 | MessageBox.Show(ex.Message);
318 | return false;
319 | }
320 | }
321 |
322 | ///
323 | /// ビルドを開始する。
324 | ///
325 | ///
326 | private bool BuildStart()
327 | {
328 | try
329 | {
330 |
331 | System.IO.File.Delete(this.textBox_Export.Text);
332 | if (!CreateBat()) return false;
333 | System.Diagnostics.Process p = new System.Diagnostics.Process();
334 | p.StartInfo.FileName = g_buidbat;
335 |
336 | p.StartInfo.UseShellExecute = false;
337 | p.StartInfo.RedirectStandardOutput = true;
338 | p.StartInfo.RedirectStandardInput = false;
339 | //ウィンドウを表示しないようにする
340 | p.StartInfo.CreateNoWindow = true;
341 |
342 | //p.StartInfo.WorkingDirectory = this.textBox_Export.Text;
343 | p.Start();
344 | string logs = p.StandardOutput.ReadToEnd();
345 | //System.Diagnostics.Process.Start(g_smcsPath,batScript);
346 | if (System.IO.File.Exists(this.textBox_Export.Text))
347 | {
348 | MessageBox.Show("DLLの生成が完了しました。","確認");
349 | this.labelBuild.Text = ":Succes";
350 | this.labelBuild.ForeColor = Color.Blue;
351 | }
352 | else
353 | {
354 | MessageBox.Show("DLLの生成に失敗しました。",
355 | "エラー",
356 | MessageBoxButtons.OK,
357 | MessageBoxIcon.Error);
358 | this.labelBuild.Text = ":Failed";
359 | this.labelBuild.ForeColor = Color.Red;
360 | }
361 |
362 | p.WaitForExit();
363 | p.Close();
364 | this.textBoxLog.Text =logs;
365 | return true;
366 | }
367 | catch (Exception ex)
368 | {
369 | MessageBox.Show(ex.Message);
370 | MessageBox.Show("DLLの生成に失敗しました。",
371 | "エラー",
372 | MessageBoxButtons.OK,
373 | MessageBoxIcon.Error);
374 | this.labelBuild.Text = ":Failed";
375 | this.labelBuild.ForeColor = Color.Red;
376 | return false;
377 | }
378 | }
379 | private void buttonInport_Click(object sender, EventArgs e)
380 | {
381 | string ImportPath = SetFileNameDialog(DIALOG_MODE.IMPORT);
382 | this.textBox_Import.Text = ImportPath;
383 | }
384 |
385 | private void buttonExport_Click(object sender, EventArgs e)
386 | {
387 | string ExportPath = SetFileNameDialog(DIALOG_MODE.EXPORT);
388 | this.textBox_Export.Text = ExportPath;
389 | }
390 |
391 | private void label7_Click(object sender, EventArgs e)
392 | {
393 |
394 | }
395 |
396 | private void buttonResearch_Click(object sender, EventArgs e)
397 | {
398 | UnityPathSet();
399 | }
400 |
401 | ///
402 | /// 必須ファイルが選択されれなければ警告を表示
403 | ///
404 | ///
405 | private bool CheckDllFile()
406 | {
407 | if (g_dllFileOk == false)
408 | {
409 | MessageBox.Show("必須ファイルを先に設定してください",
410 | "エラー",
411 | MessageBoxButtons.OK,
412 | MessageBoxIcon.Error);
413 | return false;
414 | }
415 | return true;
416 | }
417 |
418 | ///
419 | /// スクリプト or 出力先が指定されていないと警告を表示
420 | ///
421 | ///
422 | private bool CheckExpImp()
423 | {
424 | bool result = false;
425 | try
426 | {
427 | result = this.textBox_Import.Text.Length > 0;
428 | if (!result)
429 | MessageBox.Show("変換元スクリプトが指定されていません。",
430 | "エラー",
431 | MessageBoxButtons.OK,
432 | MessageBoxIcon.Error);
433 |
434 | result = this.textBox_Export.Text.Length > 0;
435 | if (!result)
436 | MessageBox.Show("DLL出力先が指定されていません。",
437 | "エラー",
438 | MessageBoxButtons.OK,
439 | MessageBoxIcon.Error);
440 |
441 | return result;
442 | }
443 | catch (Exception ex)
444 | {
445 | MessageBox.Show(ex.Message);
446 | return false;
447 | }
448 | }
449 |
450 | private void buttonCreate_Click(object sender, EventArgs e)
451 | {
452 | this.labelBuild.Text = "";
453 | if (CheckDllFile() == false) return;
454 | if (CheckExpImp() == false) return;
455 | BuildStart();
456 |
457 | }
458 |
459 | private void buttonOpenExp_Click(object sender, EventArgs e)
460 | {
461 | try
462 | {
463 | if(this.textBox_Export.Text.Length <= 0)
464 | {
465 | MessageBox.Show("DLL出力先が指定されていません。",
466 | "エラー",
467 | MessageBoxButtons.OK,
468 | MessageBoxIcon.Error);
469 | }
470 | System.Diagnostics.Process.Start(System.IO.Directory.GetParent(this.textBox_Export.Text).FullName);
471 | }
472 | catch (Exception ex)
473 | {
474 | MessageBox.Show(ex.Message);
475 | }
476 | }
477 | }
478 | }
479 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using System.Windows.Forms;
6 |
7 | namespace UnityDLLCreater
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// アプリケーションのメイン エントリ ポイントです。
13 | ///
14 | [STAThread]
15 | static void Main()
16 | {
17 | Application.EnableVisualStyles();
18 | Application.SetCompatibleTextRenderingDefault(false);
19 | Application.Run(new MainForm());
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // アセンブリに関する一般情報は以下の属性セットをとおして制御されます。
6 | // アセンブリに関連付けられている情報を変更するには、
7 | // これらの属性値を変更してください。
8 | [assembly: AssemblyTitle("UnityDLLCreater")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("UnityDLLCreater")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // ComVisible を false に設定すると、このアセンブリ内の型は COM コンポーネントから
18 | // 参照できなくなります。COM からこのアセンブリ内の型にアクセスする必要がある場合は、
19 | // その型の ComVisible 属性を true に設定してください。
20 | [assembly: ComVisible(false)]
21 |
22 | // このプロジェクトが COM に公開される場合、次の GUID が typelib の ID になります
23 | [assembly: Guid("2e05572f-86bd-4563-87fd-d9877d62cb13")]
24 |
25 | // アセンブリのバージョン情報は次の 4 つの値で構成されています:
26 | //
27 | // メジャー バージョン
28 | // マイナー バージョン
29 | // ビルド番号
30 | // Revision
31 | //
32 | // すべての値を指定するか、次を使用してビルド番号とリビジョン番号を既定に設定できます
33 | // 既定値にすることができます:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // このコードはツールによって生成されました。
4 | // ランタイム バージョン:4.0.30319.42000
5 | //
6 | // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、
7 | // コードが再生成されるときに損失したりします
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace UnityDLLCreater.Properties
12 | {
13 |
14 |
15 | ///
16 | /// ローカライズされた文字列などを検索するための、厳密に型指定されたリソース クラスです。
17 | ///
18 | // このクラスは StronglyTypedResourceBuilder クラスが ResGen
19 | // または Visual Studio のようなツールを使用して自動生成されました。
20 | // メンバーを追加または削除するには、.ResX ファイルを編集して、/str オプションと共に
21 | // ResGen を実行し直すか、または VS プロジェクトをリビルドします。
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources
26 | {
27 |
28 | private static global::System.Resources.ResourceManager resourceMan;
29 |
30 | private static global::System.Globalization.CultureInfo resourceCulture;
31 |
32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
33 | internal Resources()
34 | {
35 | }
36 |
37 | ///
38 | /// このクラスで使用されるキャッシュされた ResourceManager インスタンスを返します。
39 | ///
40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
41 | internal static global::System.Resources.ResourceManager ResourceManager
42 | {
43 | get
44 | {
45 | if ((resourceMan == null))
46 | {
47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UnityDLLCreater.Properties.Resources", typeof(Resources).Assembly);
48 | resourceMan = temp;
49 | }
50 | return resourceMan;
51 | }
52 | }
53 |
54 | ///
55 | /// 厳密に型指定されたこのリソース クラスを使用して、すべての検索リソースに対し、
56 | /// 現在のスレッドの CurrentUICulture プロパティをオーバーライドします。
57 | ///
58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
59 | internal static global::System.Globalization.CultureInfo Culture
60 | {
61 | get
62 | {
63 | return resourceCulture;
64 | }
65 | set
66 | {
67 | resourceCulture = value;
68 | }
69 | }
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // このコードはツールによって生成されました。
4 | // ランタイム バージョン:4.0.30319.42000
5 | //
6 | // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、
7 | // コードが再生成されるときに損失したりします。
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace UnityDLLCreater.Properties {
12 |
13 |
14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.1.0.0")]
16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
17 |
18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
19 |
20 | public static Settings Default {
21 | get {
22 | return defaultInstance;
23 | }
24 | }
25 |
26 | [global::System.Configuration.UserScopedSettingAttribute()]
27 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
28 | [global::System.Configuration.DefaultSettingValueAttribute("")]
29 | public string UNITY_PATH {
30 | get {
31 | return ((string)(this["UNITY_PATH"]));
32 | }
33 | set {
34 | this["UNITY_PATH"] = value;
35 | }
36 | }
37 |
38 | [global::System.Configuration.UserScopedSettingAttribute()]
39 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
40 | [global::System.Configuration.DefaultSettingValueAttribute("")]
41 | public string DEFAULT_EXP {
42 | get {
43 | return ((string)(this["DEFAULT_EXP"]));
44 | }
45 | set {
46 | this["DEFAULT_EXP"] = value;
47 | }
48 | }
49 |
50 | [global::System.Configuration.UserScopedSettingAttribute()]
51 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
52 | [global::System.Configuration.DefaultSettingValueAttribute("")]
53 | public string DEFAULT_IMP {
54 | get {
55 | return ((string)(this["DEFAULT_IMP"]));
56 | }
57 | set {
58 | this["DEFAULT_IMP"] = value;
59 | }
60 | }
61 |
62 | [global::System.Configuration.UserScopedSettingAttribute()]
63 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
64 | [global::System.Configuration.DefaultSettingValueAttribute("\\Editor\\Data\\Mono\\bin\\smcs.bat")]
65 | public string PATH_SMCS {
66 | get {
67 | return ((string)(this["PATH_SMCS"]));
68 | }
69 | set {
70 | this["PATH_SMCS"] = value;
71 | }
72 | }
73 |
74 | [global::System.Configuration.UserScopedSettingAttribute()]
75 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
76 | [global::System.Configuration.DefaultSettingValueAttribute("\\Editor\\Data\\Managed\\UnityEngine.dll")]
77 | public string PATH_UNITYENGINE {
78 | get {
79 | return ((string)(this["PATH_UNITYENGINE"]));
80 | }
81 | set {
82 | this["PATH_UNITYENGINE"] = value;
83 | }
84 | }
85 |
86 | [global::System.Configuration.UserScopedSettingAttribute()]
87 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
88 | [global::System.Configuration.DefaultSettingValueAttribute("\\Editor\\Data\\Managed\\UnityEditor.dll")]
89 | public string PATH_UNITYEDITOR {
90 | get {
91 | return ((string)(this["PATH_UNITYEDITOR"]));
92 | }
93 | set {
94 | this["PATH_UNITYEDITOR"] = value;
95 | }
96 | }
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/UnityDLLCreater/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | \Editor\Data\Mono\bin\smcs.bat
16 |
17 |
18 | \Editor\Data\Managed\UnityEngine.dll
19 |
20 |
21 | \Editor\Data\Managed\UnityEditor.dll
22 |
23 |
24 |
--------------------------------------------------------------------------------
/UnityDLLCreater/UnityDLLCreater.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {2E05572F-86BD-4563-87FD-D9877D62CB13}
8 | WinExe
9 | UnityDLLCreater
10 | UnityDLLCreater
11 | v4.5.2
12 | 512
13 | true
14 | publish\
15 | true
16 | Disk
17 | false
18 | Foreground
19 | 7
20 | Days
21 | false
22 | false
23 | true
24 | 0
25 | 1.0.0.%2a
26 | false
27 | false
28 | true
29 |
30 |
31 | AnyCPU
32 | true
33 | full
34 | false
35 | bin\Debug\
36 | DEBUG;TRACE
37 | prompt
38 | 4
39 |
40 |
41 | AnyCPU
42 | pdbonly
43 | true
44 | bin\Release\
45 | TRACE
46 | prompt
47 | 4
48 |
49 |
50 | UnityDLLCreater.ico
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 | Form
68 |
69 |
70 | MainForm.cs
71 |
72 |
73 |
74 |
75 | MainForm.cs
76 |
77 |
78 | ResXFileCodeGenerator
79 | Resources.Designer.cs
80 | Designer
81 |
82 |
83 | True
84 | Resources.resx
85 |
86 |
87 | SettingsSingleFileGenerator
88 | Settings.Designer.cs
89 |
90 |
91 | True
92 | Settings.settings
93 | True
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 | False
105 | Microsoft .NET Framework 4.5.2 %28x86 および x64%29
106 | true
107 |
108 |
109 | False
110 | .NET Framework 3.5 SP1
111 | false
112 |
113 |
114 |
115 |
--------------------------------------------------------------------------------
/UnityDLLCreater/UnityDLLCreater.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | publish\
5 |
6 |
7 |
8 |
9 |
10 | ja-JP
11 | false
12 |
13 |
--------------------------------------------------------------------------------
/UnityDLLCreater/UnityDLLCreater.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/UnityDLLCreater.ico
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/Sample/TestLib/.vs/TestLib/v15/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/bin/Release/Sample/TestLib/.vs/TestLib/v15/.suo
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/Sample/TestLib/Common.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace TestLib
4 | {
5 | ///
6 | /// 文字列操作クラス
7 | ///
8 | public class StringOpes
9 | {
10 | ///
11 | /// 文字列に現在時刻を挿入する。
12 | ///
13 | /// 文字列
14 | /// 現在時刻が挿入された文字列
15 | static public string ConvertDateStrings(string str)
16 | {
17 | string result;
18 | DateTime tm = DateTime.Now;
19 | result = tm + ":" + str;
20 | return result;
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/Sample/TestLib/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // アセンブリに関する一般情報は以下の属性セットをとおして制御されます。
6 | // アセンブリに関連付けられている情報を変更するには、
7 | // これらの属性値を変更してください。
8 | [assembly: AssemblyTitle("TestLib")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("TestLib")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // ComVisible を false に設定すると、このアセンブリ内の型は COM コンポーネントから
18 | // 参照できなくなります。COM からこのアセンブリ内の型にアクセスする必要がある場合は、
19 | // その型の ComVisible 属性を true に設定してください。
20 | [assembly: ComVisible(false)]
21 |
22 | // このプロジェクトが COM に公開される場合、次の GUID が typelib の ID になります
23 | [assembly: Guid("6e27d543-a8c3-4dae-bc03-1ac31949208e")]
24 |
25 | // アセンブリのバージョン情報は次の 4 つの値で構成されています:
26 | //
27 | // メジャー バージョン
28 | // マイナー バージョン
29 | // ビルド番号
30 | // Revision
31 | //
32 | // すべての値を指定するか、次を使用してビルド番号とリビジョン番号を既定に設定できます
33 | // 以下のように '*' を使用します:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/Sample/TestLib/TestLib.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 6e27d543-a8c3-4dae-bc03-1ac31949208e
8 | Library
9 | Properties
10 | TestLib
11 | TestLib
12 | v4.5.2
13 | 512
14 |
15 |
16 | true
17 | full
18 | false
19 | bin\Debug\
20 | DEBUG;TRACE
21 | prompt
22 | 4
23 |
24 |
25 | pdbonly
26 | true
27 | bin\Release\
28 | TRACE
29 | prompt
30 | 4
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/UnityDLLCreater.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/bin/Release/UnityDLLCreater.exe
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/UnityDLLCreater.exe.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | \Editor\Data\Mono\bin\smcs.bat
24 |
25 |
26 | \Editor\Data\Managed\UnityEngine.dll
27 |
28 |
29 | \Editor\Data\Managed\UnityEditor.dll
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/UnityDLLCreater/bin/Release/readme.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/bin/Release/readme.txt
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 9b1ec37617baaa97bf27bda0f3d1673586f31073
2 |
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.MainForm.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.MainForm.resources
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.Properties.Resources.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.Properties.Resources.resources
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Debug\UnityDLLCreater.exe.config
2 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Debug\UnityDLLCreater.exe
3 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Debug\UnityDLLCreater.pdb
4 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.csprojResolveAssemblyReference.cache
5 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.MainForm.resources
6 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.Properties.Resources.resources
7 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.csproj.GenerateResource.Cache
8 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.exe
9 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Debug\UnityDLLCreater.pdb
10 |
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.csproj.GenerateResource.Cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.csproj.GenerateResource.Cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.csprojResolveAssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.csprojResolveAssemblyReference.cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.exe
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Debug/UnityDLLCreater.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Debug/UnityDLLCreater.pdb
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 9b1ec37617baaa97bf27bda0f3d1673586f31073
2 |
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/DesignTimeResolveAssemblyReferences.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/DesignTimeResolveAssemblyReferences.cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.MainForm.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/UnityDLLCreater.MainForm.resources
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.Properties.Resources.resources:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/UnityDLLCreater.Properties.Resources.resources
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.csproj.FileListAbsolute.txt:
--------------------------------------------------------------------------------
1 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Release\UnityDLLCreater.exe.config
2 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Release\UnityDLLCreater.exe
3 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\bin\Release\UnityDLLCreater.pdb
4 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Release\UnityDLLCreater.MainForm.resources
5 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Release\UnityDLLCreater.Properties.Resources.resources
6 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Release\UnityDLLCreater.csproj.GenerateResource.Cache
7 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Release\UnityDLLCreater.exe
8 | C:\自作ツール\UnityDLLCreater\UnityDLLCreater\UnityDLLCreater\obj\Release\UnityDLLCreater.pdb
9 |
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.csproj.GenerateResource.Cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/UnityDLLCreater.csproj.GenerateResource.Cache
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/UnityDLLCreater.exe
--------------------------------------------------------------------------------
/UnityDLLCreater/obj/Release/UnityDLLCreater.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/UnityDLLCreater/obj/Release/UnityDLLCreater.pdb
--------------------------------------------------------------------------------
/sample.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hiroyuki405/UnityDLLCreater/ff55044f72d4afa3a2665e4e2634a3461555d6f8/sample.png
--------------------------------------------------------------------------------