の呟きは 22
こう、か?

GetValueでPROPVARIANTがobjectにマーシャルされちゃうと
PropVariantClear関数を呼び出せないが
objectじゃなくIntPtrにすると
PROPVARIANTのための領域確保どうしたらいいかわからないな・・・GetAtまでは何とか実行できたのに
GetValueのところにきて手詰まりかよ・・・- (UPD ) #
https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-headers/include/wtypes.h
https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-headers/include/propidl.h
https://github.com/microsoft/windows-rs/blob/master/crates/libs/core/src/imp/bindings.rs
おそらく24+16=40bytes?
VARIANTと似たような構造部分はおそらくVARIANTと同じ24bytes
後部のdecVal(?)とやらは16bytesMarshalクラスのAlloc系使えばいいのだろうか・・・?
アロケーション使ってマーシャルするのがいいんかね・・・?

強引にプロパティ読むをやったけど
vtに謎の4127ってあって、これ何・・・



- (UPD ) #
VARENUMはフラグのようにORで重ねるものでは無さそうだし・・・何これ
よく見たらVT_TYPEMASKというのがあるな・・・
マジか・・・マスク・・・
4127を消せた・・・

VT_VECTORって・・・
説明あった・・・
https://learn.microsoft.com/ja-jp/windows/win32/api/propidlbase/ns-propidlbase-propvariant
つまり、AuthorとかArtistって複数記録できるシステムだったのね・・・
知らなかたt- (UPD ) #
MP3のタグとはシステムが違うのかな
FILETIME処理した

文字列補間というやつバグでもあるのか知らんけど
public override string ToString() =>
$"{wYear:D4}-{wMonth:D2}-{wDay:D2}T{wHour:D2}:{wMinute:D2}:{wSecond:D2}.{wMilliseconds:D3}";
としたら
Props.cs(139,82): error CS0103: 現在のコンテキストに 'wMilliSeconds' という名前は存在しません
とかいうエラー出してきてクソ
LPWSTRも処理した

https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/operators/patterns
C#のswitchステートメントとswitch式とやら・・・複雑では・・・switch式って何ぞ・・・いつそんなもん出来たんだ・・・?
ポケGO
消えたなくなったと思ってた大量にあった周辺のルートどもが復活してたんだが・・・
俺の作ったルートも周辺ルートに表示されてるのだが・・・誰かがプレイして報告でもされたら困る・・・俺の作ったルートは俺ひとりのものでよかったのに・・・