とりあえず日記

VIM→秀丸エディタ→VIM→秀丸エディタ→VIM→秀丸エディタ→VIM→秀丸エディタ→VIM→秀丸エディタ→VIM→秀丸エディタ(いまここ🍄)

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)について

 

まとめ

とくにないです😅

 

以上

dnsmasqでweb広告をブロックするスクリプトを更新したよ

大昔の作成した以下のスクリプトを更新しました、もし良ければ使ってください!!

 

 

更新内容

  • 280blockerさんの新しいファイル命名規則(YYYYMM)に対応しました
  • ignore.txtを実装(「自分にとっては大事な広告なんだぁ~」という場面で利用します)

ダウンロードはこちらから

dnsmasq_adblock/README.md at master · ohtorii/dnsmasq_adblock · GitHub

 

謝辞

280blocker | モバイル広告ブロッカー

http://pgl.yoyo.org/

Halo Infinite - PC版が利用している第三者ソフトウェア

Halo infiniteとは

www.halowaypoint.com

 

ここを選択するとライセンスが表示されます。

f:id:ohtorii:20220305145639p:plain

開いてるファイルはこれ

C:\Program Files\WindowsApps\Microsoft.254428597CFE2_1.3325.39166.0_x64__8wekyb3d8bbwe\NOTICE.txt

 

三者ソフトウェアの一覧

GPU Detect

github.com

 

TCMalloc

github.com

 

qpid-proton

github.com

 

FreeType

gitlab.freedesktop.org

 

ACL Animation Compression Library

github.com

 

RTM Realtime Math

github.com

 

AMD AGS SDK

github.com

 

AMD GPUOpen D3D12 Memory Allocator

gpuopen.com

 

個人的にちょっと面白いなと思った箇所

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の範囲”を探すために、おじさん全部リバースエンジニアリング、してちゃうぞぉ~

と、思いました。

 

以上です