メイドいぢり:プラグイン更新チェック用csv

インターネット上にCSVを配置し1)そのURLをメイドいぢりに登録することで、プラグインの更新チェックを行わせることが出来ます。
バージョンチェックが行えるものは、メイドいぢりのプラグインと接続が確立した際に読み込まれているアセンブリです。
※プラグインならほぼすべて対応出来るはずです。

  • 文字コードはUTF-8とします。(ExcelはBOMを付けることを推奨)
  • 区切り文字は,(カンマ)です。
  • 改行コードはCRLFまたはCRまたLFです。
  • 1行目は表題として読み飛ばします。2)
  • カンマをエスケープするには“(ダブルクォート)で囲ってください、”(ダブルクォート)をエスケープするには““の様に2つ続けてください。
  • 改行も”(ダブルクォート)で囲めば含めることが出来ますが、改行が有効な項目はありません。
カラム内容必須?備考
1カラム目表示用キーワード必須
2カラム目判定用キーワード必須
3カラム目バージョン必須文字列として扱うのでx.x.x.x形式でなくて良い
4カラム目公開/情報サイトURLです。省略可まとめサイトでもXのポストでも何でも
5カラム目ダウンロードURLです。省略可ローダーでもGoogleDriveでも何でも

必須の1~3カラムが空欄または存在しない場合、その行は読み飛ばされます。
行コメントはありません、必須カラムをなくすことで読み飛ばすのでそれを利用してください。
6カラム目以降は現在のところ使用しませんし、何かが設定されていても問題ありませんが、今後追加される可能性があるので使用しないでください。

サンプル
https://fumble.jp/com3d2/versions/sample.csv

プラグインとCSVデータのマッチングは以下のように行います。

Sybarisプラグインの場合
  1. PluginName属性で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  2. アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  3. AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  4. ファイル名を判定用または表示用キーワードと完全一致するか確認します。
BepInExプラグインの場合
  1. BepInPlugin属性のGUIDで指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  2. BepInPlugin属性のNameで指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  3. アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  4. AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  5. ファイル名を判定用または表示用キーワードと完全一致するか確認します。
通常のアセンブリの場合
  1. アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  2. AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。
  3. ファイル名を判定用または表示用キーワードと完全一致するか確認します。

比較は両端の空白文字を削除3))し、大文字/小文字を区別せず4))に行います。 Plugin,Pacher,Managed等を個別でバージョンチェックする場合、それぞれ指定してください。
Plugin,Pacher,Managed等を個別で設定した場合で、アセンブリ名が同じ等、複数合致した項目は無視します。

バージョンは以下の順で最初に取れたものを使用します。

Sybarisプラグインの場合
  1. PluginVersion属性で指定した文字列
  2. AssemblyFileVersion属性(FileVersionInfo.FileVersion)で指定した文字列
  3. AssemblyVersion属性(FileVersionInfo.ProductVersion)で指定した文字列
BepInExプラグインの場合
  1. BepInPlugin属性のVersionで指定した文字列
  2. AssemblyFileVersion属性(FileVersionInfo.FileVersion)で指定した文字列
  3. AssemblyVersion属性(FileVersionInfo.ProductVersion)で指定した文字列
通常のアセンブリの場合
  1. AssemblyFileVersion属性(FileVersionInfo.FileVersion)で指定した文字列
  2. AssemblyVersion属性(FileVersionInfo.ProductVersion)で指定した文字列

つまり、Sybarisプラグインの場合はPluginVersion属性が合えば、AssemblyFileVersion属性が異なっていても同じものとして扱います。

バージョン比較はトリムした文字列を単純に比較します。

従って新旧の判定は行われません。


1)
レスポンスとしてCSV文字列が返ってくれば良いのでCGIでもOK
2)
そのためExcel対策でBOMを付けておいても平気です。
3)
String.Trim(
4)
String.ToLowerInvariant(

コメント

コメントを入力:
 
  • メイドいぢり/プラグイン更新チェック用csv.txt
  • 最終更新: 2024/11/06 13:18
  • by fumble