nnn1590 / Switch-Toolbox

A tool to edit many video game file formats
GNU General Public License v3.0
0 stars 0 forks source link

めも #1

Open nnn1590 opened 3 years ago

nnn1590 commented 3 years ago

ブランチfix_case_and_more(masterから派生)で変えたとことか ブランチ名に反して大文字小文字の修正以外の箇所が多い気がするけどand_moreって書いたしまあいいや(適当) https://github.com/nnn1590/Switch-Toolbox/commit/93070ae51bbf7ae5c909342ad6efaf770adb6bf1 (rename file)って書いたけどToolbox.csprojでYaz0.dllyaz0.dllにしてた

まあMonoで一応ビルドできるようにした(不完全) axWindowsMediaPlayer1_PlayStateChangeが壊れたかもしれんけどビルドエラー出なくなったのでヨシ! System.Activitiesも消したから壊れたかも

なんかUpdaterがビルドできないからToolboxから除外。

ビルドログ ```console nnn1590@ubuntu:~/Documents/Switch-Toolbox/Updater$ msbuild Mono 向け Microsoft (R) Build Engine バージョン 16.6.0 Copyright (C) Microsoft Corporation.All rights reserved. 2021/08/29 4:24:45 にビルドを開始しました。 ノード 1 上のプロジェクト "/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/Updater.csproj" (既定のターゲット)。 GenerateBindingRedirects: ResolveAssemblyReferences から推奨されるバインド リダイレクトがありません。 GenerateTargetFrameworkMonikerAttribute: すべての出力ファイルが入力ファイルに対して最新なので、ターゲット "GenerateTargetFrameworkMonikerAttribute" を省略します。 CoreCompile: /usr/lib/mono/msbuild/Current/bin/Roslyn/csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /platform:anycpu32bitpreferred /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva+ /reference:/usr/lib/mono/4.5.2-api/Microsoft.CSharp.dll /reference:/usr/lib/mono/4.5.2-api/mscorlib.dll /reference:"/home/nnn1590/ドキュメント/Switch-Toolbox/Toolbox/Lib/Octokit.dll" /reference:/usr/lib/mono/4.5.2-api/System.Core.dll /reference:/usr/lib/mono/4.5.2-api/System.Data.DataSetExtensions.dll /reference:/usr/lib/mono/4.5.2-api/System.Data.dll /reference:/usr/lib/mono/4.5.2-api/System.dll /reference:/usr/lib/mono/4.5.2-api/System.IO.Compression.FileSystem.dll /reference:/usr/lib/mono/4.5.2-api/System.Net.Http.dll /reference:/usr/lib/mono/4.5.2-api/System.Xml.dll /reference:/usr/lib/mono/4.5.2-api/System.Xml.Linq.dll /debug+ /debug:full /filealign:512 /nowin32manifest /optimize- /out:obj/Debug/Updater.exe /subsystemversion:6.00 /target:exe /utf8output /deterministic+ /langversion:7.3 Program.cs Properties/AssemblyInfo.cs "obj/Debug/.NETFramework,Version=v4.5.2.AssemblyAttributes.cs" Using shared compilation with compiler from directory: /usr/lib/mono/msbuild/Current/bin/Roslyn _CopyFilesMarkedCopyLocal: "/home/nnn1590/ドキュメント/Switch-Toolbox/Toolbox/Lib/Octokit.dll" から "/home/nnn1590/ドキュメント/Switch-Toolbox/Toolbox/bin/Debug/Octokit.dll" へファイルをコピーしています。 "/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/obj/Debug/Updater.csproj.CopyComplete" のタッチ タスクを実行しています。 _CopyAppConfigFile: すべての出力ファイルが入力ファイルに対して最新なので、ターゲット "_CopyAppConfigFile" を省略します。 /usr/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(4774,5): error MSB3030: ファイル "obj/Debug/Updater.application" は見つからなかったためコピーできません。 [/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/Updater.csproj] プロジェクト "/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/Updater.csproj" (既定のターゲット) のビルドが終了しました -- 失敗。 ビルドに失敗しました。 "/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/Updater.csproj" (既定のターゲット) (1) -> (_CopyManifestFiles ターゲット) -> /usr/lib/mono/msbuild/Current/bin/Microsoft.Common.CurrentVersion.targets(4774,5): error MSB3030: ファイル "obj/Debug/Updater.application" は見つからなかったためコピーできません。 [/home/nnn1590/ドキュメント/Switch-Toolbox/Updater/Updater.csproj] 0 個の警告 1 エラー 経過時間 00:00:03.18 ```

その後msbuildでなんとかビルド成功したものをmonoで実行しようとするとエラって実行できない。Win32API叩いてる?

ランタイムエラー ```console nnn1590@ubuntu:~/Documents/Switch-Toolbox$ mono Toolbox/bin/Debug/Toolbox.exe System.EntryPointNotFoundException: GetWindow assembly: type: member:(null) at (wrapper managed-to-native) FlatTabControl.Win32.GetWindow(intptr,int) at FlatTabControl.FlatTabControl.FindUpDown () [0x00009] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at FlatTabControl.FlatTabControl.OnCreateControl () [0x00008] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at System.Windows.Forms.Control.CreateControl () [0x00082] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.WmShowWindow (System.Windows.Forms.Message& m) [0x00036] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00214] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.TabControl.WndProc (System.Windows.Forms.Message& m) [0x00057] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x0000b] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.NativeWindow.WndProc (System.IntPtr hWnd, System.Windows.Forms.Msg msg, System.IntPtr wParam, System.IntPtr lParam) [0x00085] in <6d635ac3dc1c4424ad385ded79f1e868>:0 Unhandled Exception: System.EntryPointNotFoundException: GetWindow assembly: type: member:(null) at (wrapper managed-to-native) FlatTabControl.Win32.GetWindow(intptr,int) at FlatTabControl.FlatTabControl.FindUpDown () [0x00009] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at FlatTabControl.FlatTabControl.OnSizeChanged (System.EventArgs e) [0x00001] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at System.Windows.Forms.Control.UpdateBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Int32 clientWidth, System.Int32 clientHeight) [0x000ce] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.UpdateBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height) [0x0004a] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.SetBoundsCore (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Windows.Forms.BoundsSpecified specified) [0x000f2] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.SetBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Windows.Forms.BoundsSpecified specified) [0x00078] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.set_Size (System.Drawing.Size value) [0x00025] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control.set_Size(System.Drawing.Size) at Toolbox.MainForm.InitializeComponent () [0x00ee3] in :0 at Toolbox.MainForm..ctor () [0x0005b] in :0 at (wrapper remoting-invoke-with-check) Toolbox.MainForm..ctor() at Toolbox.Program.Main () [0x00157] in :0 [ERROR] FATAL UNHANDLED EXCEPTION: System.EntryPointNotFoundException: GetWindow assembly: type: member:(null) at (wrapper managed-to-native) FlatTabControl.Win32.GetWindow(intptr,int) at FlatTabControl.FlatTabControl.FindUpDown () [0x00009] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at FlatTabControl.FlatTabControl.OnSizeChanged (System.EventArgs e) [0x00001] in <0cf716b5b5da4d71aeeb18cc0d81593b>:0 at System.Windows.Forms.Control.UpdateBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Int32 clientWidth, System.Int32 clientHeight) [0x000ce] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.UpdateBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height) [0x0004a] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.SetBoundsCore (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Windows.Forms.BoundsSpecified specified) [0x000f2] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.SetBounds (System.Int32 x, System.Int32 y, System.Int32 width, System.Int32 height, System.Windows.Forms.BoundsSpecified specified) [0x00078] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at System.Windows.Forms.Control.set_Size (System.Drawing.Size value) [0x00025] in <6d635ac3dc1c4424ad385ded79f1e868>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control.set_Size(System.Drawing.Size) at Toolbox.MainForm.InitializeComponent () [0x00ee3] in :0 at Toolbox.MainForm..ctor () [0x0005b] in :0 at (wrapper remoting-invoke-with-check) Toolbox.MainForm..ctor() at Toolbox.Program.Main () [0x00157] in :0 ```

なのでWineで実行してみる。(WINEPREFIXに何をインストールしたか忘れた。64bit) 今度はハンドルされていないエラーとか出てくるけどとりあえず続行で

nnn1590 commented 3 years ago

今新しい64-bit WinePrefixで試したけど実行できるにはできる(ハンドルされていない例外ってよく出る)

export WINEPREFIX="/tmp/wine64"
mkdir -pv "${WINEPREFIX}"
wine Switch-Toolbox/Toolbox/bin/Debug/Toolbox.exe

なんかこのリポジトリ、dllが多いけどライセンス/ソース不明なライブラリあるくね?

ソースの場所とライセンスが分からなかった物

ソースは見つけたけどライセンスが分からなかった物

nnn1590 commented 3 years ago

Syroot.NintenTools.NSW.Bfresこれ(BfresLibrary) なのかー? NSWじゃない元祖Syroot(Syroot.NintenTools.Bfres)でgrep -r MaterialAnimするとヒットせず、BfresLibraryでgrepるとなんかヒットしたから でも名前はSyroot.NintenTools.NSW.BfresじゃなくてBfresLibraryだし色々謎

あとBfresLibraryが依存しているSyroot.NintenTools.NSW.Bntxのライセンス/ソースが見当たらない

(NSWってなんの略だ?)

nnn1590 commented 3 years ago

Syroot.NintenTools.Bntxは存在しないみたい Syroot.NintenTools.NSWについてGitHub&Google検索したけどどこにも見当たらないゾ…たまげたなぁ…

nnn1590 commented 3 years ago

これもうわかんねぇな じゃけん質問しましょうね〜

nnn1590 commented 3 years ago

あれ、やっぱそうなの? Bntx…もう少し調べたほうがいいかな

nnn1590 commented 1 year ago

1年ぶりのコメント失礼するゾ^〜 んにゃぴ…んまぁそう、よくわかんなかったです…

nnn1590 commented 1 year ago

現状プロプライエタリとして考えたほうが良さそうですかね…?

nnn1590 commented 1 year ago

さっきソースが上げられたゾ やったぜ。