├── 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 | ![ss](https://github.com/hiroyuki405/UnityDLLCreater/blob/master/sample.png) 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 --------------------------------------------------------------------------------