OSDN Git Service

#32185 DLL群を別フォルダに分けた。
authoryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Tue, 8 Oct 2013 15:51:52 +0000 (15:51 +0000)
committeryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Tue, 8 Oct 2013 15:51:52 +0000 (15:51 +0000)
ソリューションファイル(*.sln)やプロジェクトファイル(*.csproj)に修正があるので注意。
また、DLLのパス変更に伴い、FDK.DLLに署名が必要となったので注意。署名の方法は、DTXManiaのSourceForge.jpの文書(Wiki)を参照。署名に必要なキーペアはビルドする人が各自で生成する必要あり。
#xxxxx リリース番号を098に変更。(日付は仮のものです)

git-svn-id: http://svn.osdn.jp/svnroot/dtxmania/trunk@620 16f42ceb-6dc6-49c8-ba94-f2d53467949d

28 files changed:
DTXManiaプロジェクト/DTXManiaソリューション.sln
DTXManiaプロジェクト/DTXManiaプロジェクト.csproj
DTXManiaプロジェクト/Properties/AssemblyInfo.cs
DTXManiaプロジェクト/app.config
DTXManiaプロジェクト/コード/ステージ/07.演奏/CAct演奏Combo共通.cs
DTXManiaプロジェクト/コード/全体/CDTXMania.cs
DTXManiaプロジェクト/コード/全体/Program.cs
FDK17プロジェクト/FDK19.csproj
実行時フォルダ(DTXCreator)/FDK.dll
実行時フォルダ/DTXManiaGR.exe
実行時フォルダ/DTXManiaGR.exe.config [new file with mode: 0644]
実行時フォルダ/dll/Bass.Net.dll [moved from 実行時フォルダ/Bass.Net.dll with 100% similarity]
実行時フォルダ/dll/DirectShowLib-2005.dll [moved from 実行時フォルダ/DirectShowLib-2005.dll with 100% similarity]
実行時フォルダ/dll/FDK.dll [moved from 実行時フォルダ/FDK.dll with 92% similarity]
実行時フォルダ/dll/Microsoft.VC90.CRT.manifest [moved from 実行時フォルダ/Microsoft.VC90.CRT.manifest with 100% similarity]
実行時フォルダ/dll/SlimDXc_net20x86_Jun2010.dll [moved from 実行時フォルダ/SlimDXc_net20x86_Jun2010.dll with 100% similarity]
実行時フォルダ/dll/SoundDecoder.dll [moved from 実行時フォルダ/SoundDecoder.dll with 100% similarity]
実行時フォルダ/dll/bass.dll [moved from 実行時フォルダ/bass.dll with 100% similarity]
実行時フォルダ/dll/bass_fx.dll [moved from 実行時フォルダ/bass_fx.dll with 100% similarity]
実行時フォルダ/dll/bassasio.dll [moved from 実行時フォルダ/bassasio.dll with 100% similarity]
実行時フォルダ/dll/bassmix.dll [moved from 実行時フォルダ/bassmix.dll with 100% similarity]
実行時フォルダ/dll/basswasapi.dll [moved from 実行時フォルダ/basswasapi.dll with 100% similarity]
実行時フォルダ/dll/msvcm90.dll [moved from 実行時フォルダ/msvcm90.dll with 100% similarity]
実行時フォルダ/dll/msvcp90.dll [moved from 実行時フォルダ/msvcp90.dll with 100% similarity]
実行時フォルダ/dll/msvcr90.dll [moved from 実行時フォルダ/msvcr90.dll with 100% similarity]
実行時フォルダ/dll/readme_en.txt [moved from 実行時フォルダ/readme_en.txt with 100% similarity]
実行時フォルダ/dll/readme_jp.txt [moved from 実行時フォルダ/readme_jp.txt with 100% similarity]
実行時フォルダ/dll/xadec.dll [moved from 実行時フォルダ/xadec.dll with 100% similarity]

index e2a9679..e0f3ff3 100644 (file)
@@ -1,7 +1,10 @@
 \r
 Microsoft Visual Studio Solution File, Format Version 10.00\r
-# Visual C# Express 2008\r
+# Visual Studio 2008\r
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DTXManiaプロジェクト", "DTXManiaプロジェクト.csproj", "{81BEC512-8074-4BD1-8A3C-AC73BC7BF846}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {BCD40908-F3E2-4707-BFAA-1DD99DF6357D} = {BCD40908-F3E2-4707-BFAA-1DD99DF6357D}\r
+       EndProjectSection\r
 EndProject\r
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FDK19", "..\FDK17プロジェクト\FDK19.csproj", "{BCD40908-F3E2-4707-BFAA-1DD99DF6357D}"\r
 EndProject\r
index d6e54f9..35b9f53 100644 (file)
@@ -33,7 +33,7 @@
     <SignAssembly>false</SignAssembly>\r
     <AssemblyOriginatorKeyFile>\r
     </AssemblyOriginatorKeyFile>\r
-    <RunPostBuildEvent>OnOutputUpdated</RunPostBuildEvent>\r
+    <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>\r
     <ApplicationManifest>DTXManiaGR.exe.x86.manifest</ApplicationManifest>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">\r
@@ -60,9 +60,9 @@
   </PropertyGroup>\r
   <ItemGroup>\r
     <Reference Include="Microsoft.VisualBasic" />\r
-    <Reference Include="SlimDXc_net20x86_Jun2010, Version=1002.0.10.43, Culture=neutral, processorArchitecture=x86">\r
+    <Reference Include="SlimDXc_net20x86_Jun2010, Version=1002.0.10.43, Culture=neutral, PublicKeyToken=53d0e4ef1f1579f5, processorArchitecture=x86">\r
       <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>..\実行時フォルダ\SlimDXc_net20x86_Jun2010.dll</HintPath>\r
+      <HintPath>..\実行時フォルダ\dll\SlimDXc_net20x86_Jun2010.dll</HintPath>\r
     </Reference>\r
     <Reference Include="System" />\r
     <Reference Include="System.Data" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PostBuildEvent>copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ"</PostBuildEvent>\r
+    <PostBuildEvent>copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ"\r
+move /Y "$(TargetDir)\Bass.Net.dll" "$(TargetDir)dll"\r
+move /Y "$(TargetDir)\DirectShowLib-2005.dll" "$(TargetDir)dll"\r
+move /Y "$(TargetDir)\FDK.dll" "$(TargetDir)dll"\r
+move /Y "$(TargetDir)\SlimDXc_net20x86_Jun2010.dll" "$(TargetDir)dll"\r
+</PostBuildEvent>\r
   </PropertyGroup>\r
 </Project>
\ No newline at end of file
index cf8174d..8a3d424 100644 (file)
@@ -33,8 +33,8 @@ using System.Resources;
 // すべての値を指定するか、下のように '*' を使ってビルドおよびリビジョン番号を \r
 // 既定値にすることができます:\r
 // [assembly: AssemblyVersion("1.0.*")]\r
-[assembly: AssemblyVersion( "97.0.0.0" )]\r
-[assembly: AssemblyFileVersion( "97.0.0.0" )]\r
+[assembly: AssemblyVersion( "98.0.0.0" )]\r
+[assembly: AssemblyFileVersion( "98.0.0.0" )]\r
 [assembly: NeutralResourcesLanguageAttribute("ja-JP")]\r
 \r
 // このアセンブリは「ライブラリ」である(難読化ツールへの指示)。\r
index b7db281..9435afb 100644 (file)
@@ -1,3 +1,9 @@
 <?xml version="1.0"?>\r
 <configuration>\r
-<startup><supportedRuntime version="v2.0.50727"/></startup></configuration>\r
+<startup><supportedRuntime version="v2.0.50727"/></startup>\r
+  <runtime>\r
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">\r
+      <probing privatePath="dll"/>\r
+    </assemblyBinding>\r
+  </runtime>\r
+</configuration>\r
index f061bb4..b73ff27 100644 (file)
@@ -307,7 +307,7 @@ namespace DTXMania
                protected virtual void tコンボ表示・ベース( int nCombo値, int nジャンプインデックス )\r
                {\r
                }\r
-                               protected void tコンボ表示・ギター( int nCombo値, int n表示中央X, int n表示中央Y, int nジャンプインデックス )\r
+               protected void tコンボ表示・ギター( int nCombo値, int n表示中央X, int n表示中央Y, int nジャンプインデックス )\r
                {\r
                        #region [ 事前チェック。]\r
                        //-----------------\r
index 4e4239f..4f4fb01 100644 (file)
@@ -20,7 +20,7 @@ namespace DTXMania
        {\r
                // プロパティ\r
                #region [ properties ]\r
-               public static readonly string VERSION = "097(130405)";\r
+               public static readonly string VERSION = "098(131013)";\r
                public static readonly string SLIMDXDLL = "c_net20x86_Jun2010";\r
                public static readonly string D3DXDLL = "d3dx9_43.dll";         // June 2010\r
         //public static readonly string D3DXDLL = "d3dx9_42.dll";      // February 2010\r
index 9674568..9a2ce51 100644 (file)
@@ -6,29 +6,46 @@ using System.Runtime.InteropServices;
 using System.Threading;\r
 using System.Diagnostics;\r
 using System.Windows.Forms;\r
+using System.IO;\r
 using FDK;\r
 \r
 namespace DTXMania\r
 {\r
        internal class Program\r
        {\r
-               #region [ 二重動チェック、DLL存在チェック ]\r
+               #region [ 二重動チェック、DLL存在チェック ]\r
                //-----------------------------\r
                private static Mutex mutex二重起動防止用;\r
 \r
-               private static bool tDLLの存在チェック( string strDll名, string str存在しないときに表示するエラー文字列jp, string str存在しないときに表示するエラー文字列en )\r
+               private static bool tDLLの存在チェック( string strDll名, string str存在しないときに表示するエラー文字列jp, string str存在しないときに表示するエラー文字列en, bool bLoadDllCheck )\r
                {\r
-                       string str存在しないときに表示するエラー文字列 = (CultureInfo.CurrentCulture.TwoLetterISOLanguageName == "ja") ?\r
+                       string str存在しないときに表示するエラー文字列 = ( CultureInfo.CurrentCulture.TwoLetterISOLanguageName == "ja" ) ?\r
                                str存在しないときに表示するエラー文字列jp : str存在しないときに表示するエラー文字列en;\r
-                       IntPtr hModule = LoadLibrary( strDll名 );\r
-                       if( hModule == IntPtr.Zero )\r
+                       if ( bLoadDllCheck )\r
                        {\r
-                               MessageBox.Show( str存在しないときに表示するエラー文字列, "DTXMania runtime error", MessageBoxButtons.OK, MessageBoxIcon.Hand );\r
-                               return false;\r
+                               IntPtr hModule = LoadLibrary( strDll名 );              // 実際にLoadDll()してチェックする\r
+                               if ( hModule == IntPtr.Zero )\r
+                               {\r
+                                       MessageBox.Show( str存在しないときに表示するエラー文字列, "DTXMania runtime error", MessageBoxButtons.OK, MessageBoxIcon.Hand );\r
+                                       return false;\r
+                               }\r
+                               FreeLibrary( hModule );\r
+                       }\r
+                       else\r
+                       {                                                                                                       // 単純にファイルの存在有無をチェックするだけ (プロジェクトで「参照」していたり、アンマネージドなDLLが暗黙リンクされるものはこちら)\r
+                               string path = Path.Combine( System.IO.Directory.GetCurrentDirectory(), strDll名 );\r
+                               if ( !File.Exists( path ) )\r
+                               {\r
+                                       MessageBox.Show( str存在しないときに表示するエラー文字列, "DTXMania runtime error", MessageBoxButtons.OK, MessageBoxIcon.Hand );\r
+                                       return false;\r
+                               }\r
                        }\r
-                       FreeLibrary( hModule );\r
                        return true;\r
                }\r
+               private static bool tDLLの存在チェック( string strDll名, string str存在しないときに表示するエラー文字列jp, string str存在しないときに表示するエラー文字列en )\r
+               {\r
+                       return tDLLの存在チェック( strDll名, str存在しないときに表示するエラー文字列jp, str存在しないときに表示するエラー文字列en, false );\r
+               }\r
 \r
                #region [DllImport]\r
                [DllImport( "kernel32", CharSet = CharSet.Unicode, SetLastError = true )]\r
@@ -40,7 +57,7 @@ namespace DTXMania
                //-----------------------------\r
                #endregion\r
 \r
-               [STAThread]\r
+               [STAThread] \r
                private static void Main()\r
                {\r
                        mutex二重起動防止用 = new Mutex( false, "DTXManiaMutex" );\r
@@ -51,51 +68,52 @@ namespace DTXMania
                                bool flag = false;\r
 \r
                                #region [DLLの存在チェック]\r
-                               if (!tDLLの存在チェック("SlimDX" + CDTXMania.SLIMDXDLL,\r
+                               if ( !tDLLの存在チェック( "dll\\SlimDX" + CDTXMania.SLIMDXDLL + ".dll",\r
                                        "SlimDX" + CDTXMania.SLIMDXDLL + ".dll またはその依存するdllが存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "SlimDX" + CDTXMania.SLIMDXDLL + ".dll, or its depended DLL, is not found." + newLine + "Please download DTXMania again."\r
-                                       )) flag = true;\r
-                               if (!tDLLの存在チェック("FDK.dll",\r
+                                       ) ) flag = true;\r
+                               if ( !tDLLの存在チェック( "dll\\FDK.dll",\r
                                        "FDK.dll またはその依存するdllが存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "FDK.dll, or its depended DLL, is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if( !tDLLの存在チェック( "xadec.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\xadec.dll",\r
                                        "xadec.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "xadec.dll is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if( !tDLLの存在チェック( "SoundDecoder.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\SoundDecoder.dll",\r
                                        "SoundDecoder.dll またはその依存するdllが存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "SoundDecoder.dll, or its depended DLL, is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if (!tDLLの存在チェック(CDTXMania.D3DXDLL,\r
+                               if ( !tDLLの存在チェック( CDTXMania.D3DXDLL,\r
                                        CDTXMania.D3DXDLL + " が存在しません。" + newLine + "DirectX Redist フォルダの DXSETUP.exe を実行し、" + newLine + "必要な DirectX ランタイムをインストールしてください。",\r
-                                       CDTXMania.D3DXDLL + " is not found." + newLine + "Please execute DXSETUP.exe in \"DirectX Redist\" folder, to install DirectX runtimes required for DTXMania."\r
-                                       )) flag = true;\r
-                               if ( !tDLLの存在チェック( "bass.dll",\r
+                                       CDTXMania.D3DXDLL + " is not found." + newLine + "Please execute DXSETUP.exe in \"DirectX Redist\" folder, to install DirectX runtimes required for DTXMania.",\r
+                                       true\r
+                                       ) ) flag = true;\r
+                               if ( !tDLLの存在チェック( "dll\\bass.dll",\r
                                        "bass.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "baas.dll is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "Bass.Net.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\Bass.Net.dll",\r
                                        "Bass.Net.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "Bass.Net.dll is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "bassmix.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\bassmix.dll",\r
                                        "bassmix.dll を読み込めません。bassmix.dll か bass.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "bassmix.dll is not loaded. bassmix.dll or bass.dll must not exist." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "bassasio.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\bassasio.dll",\r
                                        "bassasio.dll を読み込めません。bassasio.dll か bass.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "bassasio.dll is not loaded. bassasio.dll or bass.dll must not exist." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "basswasapi.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\basswasapi.dll",\r
                                        "basswasapi.dll を読み込めません。basswasapi.dll か bass.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "basswasapi.dll is not loaded. basswasapi.dll or bass.dll must not exist." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "bass_fx.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\bass_fx.dll",\r
                                        "bass_fx.dll を読み込めません。bass_fx.dll か bass.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "bass_fx.dll is not loaded. bass_fx.dll or bass.dll must not exist." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
-                               if ( !tDLLの存在チェック( "DirectShowLib-2005.dll",\r
+                               if ( !tDLLの存在チェック( "dll\\DirectShowLib-2005.dll",\r
                                        "DirectShowLib-2005.dll が存在しません。" + newLine + "DTXManiaをダウンロードしなおしてください。",\r
                                        "DirectShowLib-2005.dll is not found." + newLine + "Please download DTXMania again."\r
                                        ) ) flag = true;\r
index 079e725..60764cf 100644 (file)
@@ -14,9 +14,8 @@
     <FileAlignment>512</FileAlignment>\r
     <TargetFrameworkSubset>\r
     </TargetFrameworkSubset>\r
-    <SignAssembly>false</SignAssembly>\r
-    <AssemblyOriginatorKeyFile>\r
-    </AssemblyOriginatorKeyFile>\r
+    <SignAssembly>true</SignAssembly>\r
+    <AssemblyOriginatorKeyFile>SlimDXKey_yyagi.snk</AssemblyOriginatorKeyFile>\r
     <ApplicationIcon>\r
     </ApplicationIcon>\r
   </PropertyGroup>\r
   <ItemGroup>\r
     <Reference Include="Bass.Net, Version=2.4.10.3, Culture=neutral, PublicKeyToken=b7566c273e6ef480, processorArchitecture=MSIL">\r
       <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>..\実行時フォルダ\Bass.Net.dll</HintPath>\r
+      <HintPath>..\実行時フォルダ\dll\Bass.Net.dll</HintPath>\r
     </Reference>\r
     <Reference Include="DirectShowLib-2005, Version=2.1.0.0, Culture=neutral, PublicKeyToken=67e7b740cdfc2d3f, processorArchitecture=MSIL">\r
       <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>..\実行時フォルダ\DirectShowLib-2005.dll</HintPath>\r
+      <HintPath>..\実行時フォルダ\dll\DirectShowLib-2005.dll</HintPath>\r
     </Reference>\r
     <Reference Include="SlimDXc_net20x86_Jun2010, Version=1002.0.10.43, Culture=neutral, PublicKeyToken=53d0e4ef1f1579f5, processorArchitecture=x86">\r
       <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>..\実行時フォルダ\SlimDXc_net20x86_Jun2010.dll</HintPath>\r
+      <HintPath>..\実行時フォルダ\dll\SlimDXc_net20x86_Jun2010.dll</HintPath>\r
     </Reference>\r
     <Reference Include="System" />\r
     <Reference Include="System.Data" />\r
   <ItemGroup>\r
     <Content Include="コード\01.フレームワーク\Resources\sdx_icon_black.ico" />\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="SlimDXKey_yyagi.snk" />\r
+  </ItemGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PostBuildEvent>copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ"\r
-copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ(DTXCreator)"</PostBuildEvent>\r
+    <PostBuildEvent>copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ\dll"\r
+copy /Y "$(TargetPath)" "$(SolutionDir)..\実行時フォルダ(DTXCreator)"\r
+copy /Y "$(TargetPath)" "$(SolutionDir)\bin\x86\Debug\dll\"\r
+\r
+\r
+</PostBuildEvent>\r
   </PropertyGroup>\r
 </Project>
\ No newline at end of file
index ddef20a..dcca8a3 100644 (file)
Binary files a/実行時フォルダ(DTXCreator)/FDK.dll and b/実行時フォルダ(DTXCreator)/FDK.dll differ
index 08b2b37..aa5aa13 100644 (file)
Binary files a/実行時フォルダ/DTXManiaGR.exe and b/実行時フォルダ/DTXManiaGR.exe differ
diff --git a/実行時フォルダ/DTXManiaGR.exe.config b/実行時フォルダ/DTXManiaGR.exe.config
new file mode 100644 (file)
index 0000000..9435afb
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>\r
+<configuration>\r
+<startup><supportedRuntime version="v2.0.50727"/></startup>\r
+  <runtime>\r
+    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">\r
+      <probing privatePath="dll"/>\r
+    </assemblyBinding>\r
+  </runtime>\r
+</configuration>\r
similarity index 92%
rename from 実行時フォルダ/FDK.dll
rename to 実行時フォルダ/dll/FDK.dll
index ddef20a..dcca8a3 100644 (file)
Binary files a/実行時フォルダ/FDK.dll and b/実行時フォルダ/dll/FDK.dll differ