C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■98105 / 4階層)  Windows10タイムラインに表示されるアイコン
□投稿者/ 迷える仔犬 (3回)-(2021/09/16(Thu) 09:39:27)
迷える仔犬 さんの Web サイト
コメントありがとうございます。
テレワーク中で気軽に他マシンで試せない状況なのですが、キャッシュの件もごもっともと思い、
新規プロジェクトからミニマムコードで試してみましたが、結果変わらずです・・・
以下の再現手順で行っていますが、何かお気づきの事がありましたら、アドバイスお願いします。
因みに、WindowsFormでUWPのAPIを利用する方法は、リンクのサイトを参考にしました。
https://codezine.jp/article/detail/10654?p=3

1.Visual Studio2019で新規プロジェクトを作成(.NET Framework 4.7.2)
2.参照設定で、以下の2ファイルを追加
  C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.18362.0\Windows.winmd
  C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\System.Runtime.WindowsRuntime.dll
3.Windows.winmdのプロパティで「ローカルにコピー」をfalse
4.Resources.resxをダブルクリック→リソースの追加から新しいアイコンの追加(デフォルトのままでも標準exeアイコンと異なるのでそれを利用)
5.プロジェクトのプロパティで「アイコンとマニフェスト」のアイコンで4のアイコンを指定(Resources\Icon1.ico)
6.フォームにボタンを配置し、クリックイベントを作成
7.下記コードをForm1.csに記述して実行して、ボタンクリックすると、標準exeアイコンでタイムラインが作成されます。


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Windows.ApplicationModel.UserActivities;

namespace TimeLineTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private static UserActivitySession gActivitySession = null;     //現在のアクティビティセッション

        private async void button1_Click(object sender, EventArgs e)
        {
            string DummyId = @"C:\test.txt";

            // UserActivityChannel から UserActivity を生成する (登録済みなら取得になる)
            UserActivityChannel MyActivityChannel = UserActivityChannel.GetDefault();
            UserActivity MyActivity = await MyActivityChannel.GetOrCreateUserActivityAsync(DummyId);

            // タイムラインから呼び出されるときのアクティベーション URI をセット
            // (ただし、登録済みのアクティビティではセット済み。変更不要なのでセットしない)
            if (MyActivity.State != UserActivityState.Published)
            {
                MyActivity.ActivationUri = new Uri(DummyId);
            }


            // タイムラインに表示される文字列をセット (タイムライン上での検索対象)
            // (これも以前と同じでよければ、登録済みのアクティビティではセット不要)
            MyActivity.VisualElements.DisplayText = "TestDisplayText";
            MyActivity.VisualElements.AttributionDisplayText = "TestAttributionDisplayText";
            MyActivity.VisualElements.Description = "Description";

            // UserActivity を保存
            await MyActivity.SaveAsync();

            // 以前の gActivitySession があるなら破棄して、新しいセッションを保持
            gActivitySession?.Dispose();
            gActivitySession = MyActivity.CreateSession();

        }
    }
}


編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[3]: Windows10タイムラインに表示されるアイコン /774RR →Re[5]: Windows10タイムラインに表示されるアイコン /774RR
 
上記関連ツリー

Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/09/15(Wed) 11:51) #98093
Re[1]: Windows10タイムラインに表示されるアイコン / 774RR (21/09/15(Wed) 14:09) #98095
  └ Re[2]: Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/09/15(Wed) 17:19) #98098
    └ Re[3]: Windows10タイムラインに表示されるアイコン / 774RR (21/09/15(Wed) 17:58) #98099
      └ Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/09/16(Thu) 09:39) #98105 ←Now
        └ Re[5]: Windows10タイムラインに表示されるアイコン / 774RR (21/09/16(Thu) 16:15) #98106
          └ Re[6]: Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/09/16(Thu) 16:53) #98107
            └ Re[7]: Windows10タイムラインに表示されるアイコン / 774RR (21/09/16(Thu) 17:13) #98108
              └ Re[8]: Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/09/22(Wed) 08:24) #98121
                └ Re[9]: Windows10タイムラインに表示されるアイコン / PATIO (21/10/06(Wed) 15:57) #98169
                  └ Re[10]: Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/10/06(Wed) 17:48) #98171
                    └ Re[11]: Windows10タイムラインに表示されるアイコン / とっちゃん (21/10/06(Wed) 21:12) #98172
                      └ Re[12]: Windows10タイムラインに表示されるアイコン / 迷える仔犬 (21/10/12(Tue) 15:10) #98199
                        └ Re[13]: Windows10タイムラインに表示されるアイコン / くま (21/10/13(Wed) 20:11) #98210

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信