現在、キャッシュ情報を利用したアプリケーションの作成を下記の環境で行っています。
開発環境:VisualStudio2019
フレームワーク:.NET Flamework4.7.2
プロジェクト種類:コンソールアプリケーション
StorageFolderクラス等を使用したいため、
using Windows.Storage; を追加したいのですが、参照を見ても、nugetを見ても見つかりません。
プロジェクトがコンソールアプリケーションの場合は、参照に追加することはできないのでしょうか。
必要な情報があれば追記いたします。
ご回答お願いいたします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答1件
0
Windows Runtime API
使う場合は、Microsoft.Windows.SDK.Contracts
をNuGetしてください。
何でもかんでも使えるというわけではないと思いますが、
ファイルとフォルダーの列挙と照会 - UWP applications | Microsoft Docs
のサンプルは実行できました。
あまり詳しくないので何が問題なのかわからないです^^;
同じようにコンソールアプリを.NET Flamework4.7.2
で作ったのですが。
cs:Program.cs
1using System; 2using System.Collections.Generic; 3using System.Text; 4using System.Threading.Tasks; 5using Windows.Storage; 6 7namespace Questions277082 8{ 9 class Program 10 { 11 static async Task Main() 12 { 13 StorageFolder picturesFolder = KnownFolders.PicturesLibrary; 14 StringBuilder outputText = new StringBuilder(); 15 16 IReadOnlyList<StorageFile> fileList = await picturesFolder.GetFilesAsync(); 17 18 outputText.AppendLine("Files:"); 19 foreach(StorageFile file in fileList) 20 { 21 outputText.Append(file.Name + "\n"); 22 } 23 24 IReadOnlyList<StorageFolder> folderList = await picturesFolder.GetFoldersAsync(); 25 26 outputText.AppendLine("Folders:"); 27 foreach(StorageFolder folder in folderList) 28 { 29 outputText.Append(folder.DisplayName + "\n"); 30 } 31 32 Console.WriteLine(outputText); 33 Console.ReadKey(); 34 } 35 } 36}
xml:Questions277082.csproj
1<?xml version="1.0" encoding="utf-8"?> 2<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3 <Import Project="$(MSBuildExtensionsPath)$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)$(MSBuildToolsVersion)\Microsoft.Common.props')" /> 4 <PropertyGroup> 5 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 6 <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> 7 <ProjectGuid>{C9C0ADED-9797-41F4-8BFC-A0A770D3AC5A}</ProjectGuid> 8 <OutputType>Exe</OutputType> 9 <RootNamespace>Questions277082</RootNamespace> 10 <AssemblyName>Questions277082</AssemblyName> 11 <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> 12 <FileAlignment>512</FileAlignment> 13 <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> 14 <Deterministic>true</Deterministic> 15 </PropertyGroup> 16 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 17 <PlatformTarget>AnyCPU</PlatformTarget> 18 <DebugSymbols>true</DebugSymbols> 19 <DebugType>full</DebugType> 20 <Optimize>false</Optimize> 21 <OutputPath>bin\Debug\</OutputPath> 22 <DefineConstants>DEBUG;TRACE</DefineConstants> 23 <ErrorReport>prompt</ErrorReport> 24 <WarningLevel>4</WarningLevel> 25 </PropertyGroup> 26 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 27 <PlatformTarget>AnyCPU</PlatformTarget> 28 <DebugType>pdbonly</DebugType> 29 <Optimize>true</Optimize> 30 <OutputPath>bin\Release\</OutputPath> 31 <DefineConstants>TRACE</DefineConstants> 32 <ErrorReport>prompt</ErrorReport> 33 <WarningLevel>4</WarningLevel> 34 </PropertyGroup> 35 <ItemGroup> 36 <Reference Include="System" /> 37 <Reference Include="System.Core" /> 38 <Reference Include="System.Xml.Linq" /> 39 <Reference Include="System.Data.DataSetExtensions" /> 40 <Reference Include="Microsoft.CSharp" /> 41 <Reference Include="System.Data" /> 42 <Reference Include="System.Net.Http" /> 43 <Reference Include="System.Xml" /> 44 </ItemGroup> 45 <ItemGroup> 46 <Compile Include="Program.cs" /> 47 <Compile Include="Properties\AssemblyInfo.cs" /> 48 </ItemGroup> 49 <ItemGroup> 50 <None Include="App.config" /> 51 </ItemGroup> 52 <ItemGroup> 53 <PackageReference Include="Microsoft.Windows.SDK.Contracts"> 54 <Version>10.0.19041.1</Version> 55 </PackageReference> 56 </ItemGroup> 57 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 58</Project>
.NET 6 以降はTFMの追加のみで、使用できるようになっています。
デスクトップ アプリで Windows ランタイム API を呼び出す - Windows apps | Microsoft Learn
投稿2020/07/12 12:16
編集2023/07/22 09:08総合スコア9862
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/12 12:54
2020/07/12 13:54
2020/07/12 14:35 編集