Sagiri-Dev / Sagiri

Sagiri makes full use of Spotify-WebAPI It's third party app.
Other
10 stars 0 forks source link

Spotifyの実行ファイルパス取得に失敗する(ユーザー名とユーザーフォルダが異なる場合) #10

Closed ThinaticSystem closed 1 year ago

ThinaticSystem commented 1 year ago

Misskeyに流れてきてなんとなく動かしてみたところ起動できなかったので一応報告だけさせていただきます。

不具合内容

起動時にSpotifyの実行パスの取得に失敗します

ユーザー名とユーザーフォルダが異なる場合(Microsoftアカウントで登録した場合など?)に\ Spotify.exeの実行時に存在しないパスを参照してしまうようです

image

ユーザー名(/しなちくシステム/)でパスが指定されていますが\ 私の環境で実際のユーザーフォルダの名前はそうではなくoutlookのアドレスの先頭5文字になっています(はずかしい)

解決案

C#何もわかりませんが軽く調べたところ\ この部分で現在の実装だとEnvironment.UserNameを受け取りパスを指定していますが\ カレントユーザーのRomingディレクトリを指定する目的だと\ Environment.SpecialFolder.ApplicationData等を使うと良さそう?な感じです\ ほんまか\ cf. https://learn.microsoft.com/ja-jp/dotnet/api/system.environment.specialfolder?view=net-7.0 https://github.com/Sagiri-Dev/Sagiri/blob/fb8ff99f7886f074497a42d70d3801e4295ab834/Sagiri/Util/Common/Constants.cs#L21-L22

Asteriskx commented 1 year ago

報告ありがとうございます。 Windows 側、この辺が雰囲気になってるので辛いところですね。 ちょっと直してみます。

Asteriskx commented 1 year ago

このアプリとしては、起動前提で動いてもらうものなので、 起動チェックをなくしました(それでいいのか問題はありますが...)

この後リリースします!