GetFileTitle

ファイル名部分の抽出は、GetFileTitleでもできる。

GetFileTitleW function (commdlg.h) - Win32 apps | Microsoft Learn

コモンダイアログの関数なので種類が違う。comdlg32.libのリンクは要らなかった。
以前やったOPENFILENAMEの項のソースコードをベースに、GetFileTitle.cppで、

GetOpenFileNameによるファイル選択で取得したパスを、GetFileTitleに渡してファイル名部分だけ取得し、SetWindowTextでウィンドウタイトルにセット。

Openを選択
Openを選択

Openを選択。

text1.txtを選択。
text1.txtを選択。

text1.txtを選択。

タイトルが"text1.txt"だけの表示に切り替わった。
タイトルが"text1.txt"だけの表示に切り替わった。

タイトルが"text1.txt"だけの表示に切り替わった。

Sample/winapi/GetFileTitle/GetFileTitle/src/GetFileTitle at master · bg1bgst333/Sample · GitHub

orderby句

orderby句で要素をソートする。

orderby 句 - C# リファレンス | Microsoft Learn

Body.csは、以前のものと変わらない。
MainClass.csは、

orderbyだけならデフォルト昇順なので、p.Height(身長)の昇順でソートする。

p.Name(名前)がp.Height(身長)の昇順で取り出されてる。
p.Name(名前)がp.Height(身長)の昇順で取り出されてる。

p.Name(名前)がp.Height(身長)の昇順で取り出されてる。

Sample/cs/orderby/orderby/src/orderby at master · bg1bgst333/Sample · GitHub

PathFindFileName

PathFindFileNameは、指定されたパスからファイル名部分だけを抽出する。

PathFindFileNameA 関数 (shwlapi.h) - Win32 apps | Microsoft Learn

これはまたshlwapi.libのリンク必要。
PathFindFileName.cppは、

こう書く。
戻り値でファイル名文字列のポインタを返してくるのが特徴。

text1.txtだけ取り出せた。
text1.txtだけ取り出せた。

text1.txtだけ取り出せた。

Sample/winapi/PathFindFileName/PathFindFileName/src/PathFindFileName at master · bg1bgst333/Sample · GitHub

where句

where句で列挙する要素の条件を指定する。

where 句 - C# リファレンス | Microsoft Learn

Body.csは、以前のものと変わらない。
MainClass.csは、

from句とselext句の間に、where句でp.Heightが170以上という条件を追加する。

このように絞り込めた。
このように絞り込めた。

このように絞り込めた。

Sample/cs/where/where/src/where at master · bg1bgst333/Sample · GitHub

SetCurrentDirectory

SetCurrentDirectoryは、指定のパスをこのプロセスの現在のディレクトリパスとして設定する。

SetCurrentDirectory function (winbase.h) - Win32 apps | Microsoft Learn

SetCurrentDirectory.cppで、

ややこしいんだけど・・・。
現在のディレクトリパスを取得し、2つ上のパスを絶対パスで取得したら、それを現在のディレクトリパスとして設定する。
そのあと、さらに1つ上のパスを相対パスで指定してそれを現在のディレクトリパスとして設定する。

releaseの2つ上がsrcでそれにセット出来てるのがわかるし、さらにその上のSetCurrentDirectoryにセット出来てるのもわかる。
releaseの2つ上がsrcでそれにセット出来てるのがわかるし、さらにその上のSetCurrentDirectoryにセット出来てるのもわかる。

releaseの2つ上がsrcでそれにセット出来てるのがわかるし、さらにその上のSetCurrentDirectoryにセット出来てるのもわかる。
まあ、相対パスでもセット出来るというだけの話。

Sample/winapi/SetCurrentDirectory/SetCurrentDirectory/src/SetCurrentDirectory at master · bg1bgst333/Sample · GitHub

select句

select句で、クエリが実行されたときに生成される値の型を指定する。

select 句 - C# リファレンス | Microsoft Learn

リストの要素がクラスや構造体なら、取得したいプロパティを指定する。
Body.csは、

こう書いて、
MainClass.csは、

名前だけ列挙したいので、selectでp.Nameを指定する。

名前だけ列挙できた。
名前だけ列挙できた。

名前だけ列挙できた。

Sample/cs/select/select/src/select at master · bg1bgst333/Sample · GitHub