ARMORED CORE™ VI FIRES OF RUBICON™ が利用しているオープンソース
昨晩見た夢を日記に書いてます
ARMORED CORE 6って個人情報を匿名化して送信しているようなので(ゲーム開始前に同意を求められる)、サーバへの送信には暗号化した経路を使っているんだろうなぁ~と思って、おもむろにライセンス表記を確認すると
クレジット - ARMORED CORE VI | アーマード・コア6 - ONLINE MANUAL
OpenSSLが無い!!念のため秀丸エディタで???をgrepすると、
- <appro@openssl.org>という文字列が何カ所か見つかります
- GrepでOpenSSLの第三者特許を含むモジュールは見つかりませんでした、なのでOpenSSLのビルド時に以下設定で除外しているようだ
-
./config no-idea no-mdc2 no-rc5
-
というわけで、OpenSSLを実行プログラムに組み込んでるけどライセンス表示は忘れてるみたい(もしかしたら、エンディングで表記している可能性もあるが)
以上
Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: "ResolvePackageAssets" タスクが予期せずに失敗しました。
VisualStudio2022のC#ソリューションで以下エラーが発生しました。
ソリューションに含まれるプロジェクトを一つずつリビルドするとエラーが直りました。
原因は不明ですが対処療法をここに載せました。
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: "ResolvePackageAssets" タスクが予期せずに失敗しました。
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: NuGet.Packaging.Core.PackagingException: Unable to find fallback package folder 'C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages'.
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 NuGet.Packaging.FallbackPackagePathResolver..ctor(String userPackageFolder, IEnumerable`1 fallbackPackageFolders)
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.NuGetPackageResolver.CreateResolver(IEnumerable`1 packageFolders)
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheWriter..ctor(ResolvePackageAssets task)
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheReader.CreateReaderFromDisk(ResolvePackageAssets task, Byte[] settingsHash)
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.ResolvePackageAssets.CacheReader..ctor(ResolvePackageAssets task)
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.ResolvePackageAssets.ReadItemGroups()
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.ResolvePackageAssets.ExecuteCore()
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.NET.Build.Tasks.TaskBase.Execute()
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
15>C:\Program Files\dotnet\sdk\7.0.400\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(266,5): error MSB4018: 場所 Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
15>プロジェクト "Test1.csproj" のビルドが終了しました -- 失敗。
15>プロジェクト "Test2.csproj" のビルドが終了しました -- 失敗。
以上
C++上でC#を動かす(その2)
はじめに
カプコンがゲームで本当に.NET Runtimeを利用しているのか疑問に思い軽く調査しました。
調査対象:BIOHAZARD VILLAGE(Steam版)
発売日:2021年5月8日
調査ファイル:re8.exe
ファイルサイズ:約500MB
調査結果
実行ファイルや実行時のメモリ内容から、以下の怪しい文字列を見付けました
-
CLRから参照可能なオブジェクトの基本クラス
-
この型は、viacore側にも.cs版が実装されていることを明示します C++ <-> C#のマーシャルは単なるメモリコピーによって実現されます
-
csharpスタイルフォーマットのインターフェイス
-
D:\RELauncher\engines\0\bin\Master\Steam_x64\runtime_il2cpp.pdb
-
CLRから参照可能なオブジェクトの基本クラス
-
/IL2CPP:True
-
Module:%hs Method:%hs ILCode:%04x
まとめ
.NET Runtimeを組み込んでいそうな雰囲気はあるが、Unity固有(?)の/IL2CPP:Trueが気になりすぎる・・・
以上
C++上でC#を動かす(その1)
はじめに
カプコン発信の情報によると、
だそうです。(ネット上の記事とかCEDECとかが情報源です)
C++上でC#を動作させる方法が気になったので、ちょいとばかり調べてみました。
ここでは、調べた内容をメモしています。
少なくとも二種類のライブラリが存在します。
-
Mono
-
.NET Runtime(旧 Microsoft CoreCLR)
Monoついて
-
C+への組み込み方
-
商用利用(可能っぽい?)
.NET Runtime(旧 Microsoft CoreCLR)について
-
C++への組み込み方
-
まとめ
とくにないです😅
以上
dnsmasqでweb広告をブロックするスクリプトを更新したよ
大昔の作成した以下のスクリプトを更新しました、もし良ければ使ってください!!
更新内容
- 280blockerさんの新しいファイル命名規則(YYYYMM)に対応しました
- ignore.txtを実装(「自分にとっては大事な広告なんだぁ~」という場面で利用します)
ダウンロードはこちらから
dnsmasq_adblock/README.md at master · ohtorii/dnsmasq_adblock · GitHub
謝辞
Halo Infinite - PC版が利用している第三者ソフトウェア
Halo infiniteとは
ここを選択するとライセンスが表示されます。
開いてるファイルはこれ
C:\Program Files\WindowsApps\Microsoft.254428597CFE2_1.3325.39166.0_x64__8wekyb3d8bbwe\NOTICE.txt
第三者ソフトウェアの一覧
GPU Detect
TCMalloc
qpid-proton
FreeType
ACL Animation Compression Library
RTM Realtime Math
AMD AGS SDK
AMD GPUOpen D3D12 Memory Allocator
個人的にちょっと面白いなと思った箇所
Notwithstanding any other terms, you may reverse engineer this software to the extent
required to debug changes to any libraries licensed under the GNU Lesser General Public License.
リバースエンジニアリングをLGPLの範囲で許容しているようだ。
でも、LGPLの範囲がわかんないから、まず、”LGPLの範囲”を探すために、おじさん全部リバースエンジニアリング、してちゃうぞぉ~
と、思いました。
以上です