たくさんの自由帳
Androidのお話
たくさんの自由帳
投稿日 : | 0 日前
文字数(だいたい) : 3977
Windows サンドボックス
にファイルをコピーしたくて、どうすれば良いのかなって調べたら、ファイルをコピーしてサンドボックスで貼り付ければいいらしい。たしかに、別にテキスト以外も送れたのか・・・
.NET 6
のLTS
がついに終わってしまうらしい。ので、今回は次のLTS
である.NET 8
にします。
今も使ってるWindows
で動くアプリが.NET 6
時代のままなので、アップデートしていきます。
自作アプリはWindows App SDK
でできたアプリと、WinForm
のアプリになります。それらを上げます
なまえ | あたい |
---|---|
Windows | 10 Pro |
Visual Studio | Community 2022 Version 17.11.4 |
git
を使ってバージョン管理してるならすぐ戻せますが、もし使ってない場合はバックアップしといたほうが良いです。
.NET アップグレード アシスタント
を入れる?
ダウンロードします
パッケージがダウンロードできるので、Visual Studio へインストールします。
もしかしたらVisual Studio
の拡張から直接入れられたかも知れない。
ダブルクリックするとなんか始まる
Visual Studio
起動中だと進まないので閉じます
さっきと同じようにアップグレードを押すとこんな画面に。.NET バージョン
の方を選ぶ
.NET 8
を選んで次へ。
よくわかんないし、最悪戻せるのでこのままアップグレードの選択
を押します
はじまりました。と思ったらほとんどスキップで終わった。
差分をgit
で見てみたけど、<TargetFramework>
が変わったくらい?
ソリューションから、プロジェクト選んで、Nugetパッケージの管理
を押して、更新があれば更新しておきます。
いやさっき.NET 8
にしたんですけど、なんでまだ6
使ってると思われてるの?
というわけで色々見てみた感じ、どうやらまだ設定しないとダメらしい?
まずはプロパティを開きます
つぎに、上げたはずのターゲットフレームワーク
を.NET 8
にします。、、、、む、押しても戻ってしまいます
もしプロジェクト内にProperties
があって、その中にPublishProfiles
がある場合、その傘下にあるファイルの.NET
バージョンも変更する必要があります。
多分値は、アップグレードアシスタントの値と同じものを入れておけば良さそう。
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PublishProtocol>FileSystem</PublishProtocol>
<Platform>x64</Platform>
<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
<PublishDir>bin\\\win10-x64\publish\win10-x64\</PublishDir>
<SelfContained>false</SelfContained>
<PublishSingleFile>true</PublishSingleFile>
<PublishReadyToRun Condition="'$(Configuration)' == 'Debug'">False</PublishReadyToRun>
<Configuration>Release</Configuration>
<TargetFramework>net8.0-windows10.0.19041.0</TargetFramework>
<!--
See https://github.com/microsoft/CsWinRT/issues/373
<PublishTrimmed>True</PublishTrimmed>
-->
</PropertyGroup>
</Project>
これで晴れて.NET 8
に更新することができました。
.NET 8 で WinUI 3 アプリをビルドする(NETSDK1083 対策)
https://zenn.dev/shinta0806/articles/dotnet8-netsdk1083
指定された RuntimeIdentifier、'win10-x64' が認識されません。 詳細については、「 https://aka.ms/netsdk1083 」を参照してください。
破壊的変更: .NET SDK では、より小さな RID グラフが使用されます - .NET
.NET 8 SDK の破壊的変更について説明します。SDK では、.NET 8 以降を対象とするプロジェクトに対して、より小さい移植可能な RID グラフが使用されます。
https://learn.microsoft.com/ja-jp/dotnet/core/compatibility/sdk/8.0/rid-graph
win10-x64
となっている部分を、win-x64
にしろってことらしい。プロジェクトをダブルクリックすると、xml
が開くはずで、その中から<RuntimeIdentifiers>
の行を探します。
わたしの場合はこうなってて、これをまずは以下のようにします。win10
をwin
だけにする。
<RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
<RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>
つぎに、Properties
のPublishProfiles
にあるファイルにも<RuntimeIdentifiers>
があるので、同様にwin10
をwin
だけにしていきます。
Properties\PublishProfiles\win10-arm64.pubxml
<RuntimeIdentifier>win-arm64</RuntimeIdentifier>
Properties\PublishProfiles\win10-x64.pubxml
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
Properties\PublishProfiles\win10-x86.pubxml
<RuntimeIdentifier>win-x86</RuntimeIdentifier>
.NET 8
にしたけどまだダメなのかな。。。
This version of the Windows App SDK requires Microsoft.Windows.SDK.NET.Ref 10.0.19041.38 or later.
Please update to .NET SDK 6.0.134, 6.0.426, 8.0.109, 8.0.305 or 8.0.402 (or later).
Or add a temporary Microsoft.Windows.SDK.NET.Ref reference which can be added with:
<PropertyGroup>
<WindowsSdkPackageVersion>10.0.19041.38</WindowsSdkPackageVersion>
</PropertyGroup>
とりあえずPropertyGroup
に一行書き足せって書いてあるので書き足してみる。一番最後のWindowsSdkPackageVersion
ってやつ。
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows10.0.19041.0</TargetFramework>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<RootNamespace>DesktopLine</RootNamespace>
<ApplicationManifest>app.manifest</ApplicationManifest>
<Platforms>x86;x64;arm64</Platforms>
<RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>
<PublishProfile>win10-$(Platform).pubxml</PublishProfile>
<UseWinUI>true</UseWinUI>
<EnableMsixTooling>true</EnableMsixTooling>
<ApplicationIcon>Resources\desktop_line_icon.ico</ApplicationIcon>
<WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
<WindowsPackageType>None</WindowsPackageType>
<WindowsSdkPackageVersion>10.0.19041.38</WindowsSdkPackageVersion>
</PropertyGroup>
やったぜ
zip
にWindows App SDK
吐き出せるか試します。プロジェクトを右クリックで発行を押します。
一回も押したことがない場合は違う画面が開くと思う?。既存のプロジェクトなのでそのまま発行
を押します。
成功したぽい!!
おおお
ちゃんと起動できた。
多分<TargetFramework>
がnet8
になるだけ?
該当部分抜き出し。
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>
直したリポジトリ
GitHub - takusan23/RunCat_for_windows_nicomoba_chan_ver: A cute running cat animation on your windows taskbar.
A cute running cat animation on your windows taskbar. - takusan23/RunCat_for_windows_nicomoba_chan_ver
https://github.com/takusan23/RunCat_for_windows_nicomoba_chan_ver
GitHub - takusan23/MuteButton: ミュートボタンを押すだけの WinUI 3 アプリ
ミュートボタンを押すだけの WinUI 3 アプリ. Contribute to takusan23/MuteButton development by creating an account on GitHub.
https://github.com/takusan23/MuteButton
GitHub - takusan23/DesktopLine: 仮想デスクトップ切り替えのショートカットキーが覚えられない
仮想デスクトップ切り替えのショートカットキーが覚えられない. Contribute to takusan23/DesktopLine development by creating an account on GitHub.
https://github.com/takusan23/DesktopLine