かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

ReactiveProperty v6.1.4 をリリースしました

各種ライブラリの更新と Pull Request の取り込みになります。 大きな変更はありません。 System.Reactive を 4.2.0 に更新しました Microsoft.Xaml.Behaviors.Wpf を 1.1.3 に更新しました IReactiveProperty を IReadOnlyReactiveProperty を継承するよう…

Livet v3.2.1 をリリースしました

しばらく触ってませんでしたが、リリースしました。 Microsoft.Xaml.Behaviors.Wpf が .NET Core 3.0 対応したので、Livet も警告が出ない状態で .NET Core で使えます。 変更点 v3 系になってから各種機能を個別の NuGet パッケージに分離してきましたが以…

Visual Studio Online Public preview 試してみた!

変更履歴 サービス名を Visual Studio Code Online と間違えて書いていたので Visual Studio Online に修正しました。 セルフホストについて追記しました 環境のカスタマイズについての記事へのリンクを追加 本文 Microsoft Ignite 2019 のキーノート見てた…

MFC に XAML Islands で UWP のコントロールを追加してみよう

MFC に UWP のコントロール置けるってさ。 やってみよう MFC アプリを新規作成します。今回は XAMLIslandsMFCApp という名前で SDI アプリケーションでいってみたいと思います。残りはデフォの設定で作成!実行するとこんな感じです。 懐かしい。(Borland C…

XAML Islands を使ったときのメリットの1つ「テーマ対応」

ツイートしようとしたら、録画したGifアニメを受け付けてくれなかったのでBlogにポスト。 画面全体を XAML Islands で覆ってる場合は、上記のようにテーマ変更にも対応してくれます。いいね。

.NET Core 3.0 + Windows 10 で WPF 開発 というタイトルで .NET Conf 2019 で登壇してきました

登壇資料アップロードしました。 .NET Core 3.0 + Windows 10 で WPF 開発 from 一希 大田 www.slideshare.net 関連記事 基本的に、過去のブログで結構書いてた内容のまとめになります。 WPF 関連 MSIX での自動更新 XAML Islands その 1 XAML Islands その …

MSIX でパッケージングしたアプリから見えるファイルシステムとレジストリの確認方法

知らなかったけど、こんなコマンドがあったんだ。 docs.microsoft.com Package.appxmanifest の Packaging タブで Package family name: を控えてこんな感じのコマンドでパッケージ化されたアプリから見えるレジストリキーが見えた Invoke-CommandInDesktopP…

WPF on .NET Core 3.0 + XAML Islands で Windows UI Library を使おう

前回 blog.okazuki.jp Windows UI Library を使おう Windows UI Library(WinUI) は、次のメジャーアップデートから Windows の OS のバージョンアップに紐づいてアップデートされてきた UWP の UI 部分を OSS として切り離して開発するというポジションにな…

WPF on .NET Core 3.0 で XAML Islands してみよう

しばらく目を離してると手順がガラッと変わっててびっくりしてる今日この頃。 docs.microsoft.com WPF on .NET Core 3.0 で XAML Islands を試してみたいと思います。 プロジェクトの構成 前は WPF プロジェクトにライブラリ追加して…という感じだったのです…

GitHub Actions for App Service を使ってサーバーサイド Blazor をデプロイしてみよう

8 月の時点でこういうブログ出てたのね!対応早い。 azure.github.io ということで試してみようと思います。 プログラムの準備 サーバーサイド Blazor を試してみようと思うので dotnet new blazorserver -o GitHubActoinsBlazor と打ち込んで適当にプロジェ…

Azure の AI 系サービスが Azure 無料アカウント作ると 1 年無料で使える枠がもらえるようになってる!

無料アカウント作ったときに無料で使える枠に AI 系サービスの Cognitive Services が含まれてます。 azure.microsoft.com もともとフリープランがあったじゃん?って思ってたのですがチェックしてみると S0 とか S1 tier と書いてるじゃないですか。普通の…

Vue CLI 3 で作った TypeScript のプロジェクトを IE11 対応しよう

Vue

npm run build したものを IE11 で開くと Vue Router とかを有効にするだけで Promise がないって言われる… ということで以下のページを参考にやってみた。 qiita.com 個別 Polyfill はつらいのでざくっとやっていきます。 プロジェクトを作るときは TypeScr…

Vue CLI 3.x で生成した Vue.js + TypeScript を VS Code でデバッグするときの注意点 for Windows

Vue

かなりレアなケースだと思うので完全に自分への備忘録です。 Vue.js を VS Code でデバッグ出来るのは周知?の通り。 jp.vuejs.org ただ、私の環境ではブレークポイントに止まらなくて困ったなぁとなってました。TypeScript 使ってるからか??と思ったので…

MFC の MDI アプリで起動時に新しいドキュメントを開かないようにする

プロジェクト名App クラスの InitInstance メソッドで以下の部分を… CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); こんな感じに編集する。 CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); cmdInfo.m_nShellCommand = CCommandLineInfo::Fi…

MFC の MDI アプリでタブに表示される名前を変えたい

このタブのところの文字を変えたい。 やり方は簡単でアプリのドキュメントクラスの プロジェクト名Doc クラスのインスタンスに SetTitle メソッドを呼んでやればいい。 あんまりしないと思うけど プロジェクト名Doc クラスの OnNewDocument で以下のような処…

Livet v3.2.1-pre をリリースしました

StatefulModel も MVVM パターンでアプリケーションを作るときに便利なクラスが入ってるので Livet に取り込んでいいかと作成者の尾上さんに確認したところ快諾していただいたので取り込みました。 LivetCask.StatefulModel パッケージが追加されています。 …

Livet v3.1.0 をリリースしました

今朝、パッケージ分割版をリリースした Livet ですが Messaging 機能を本体から分離していなかったので分離したバージョンをリリースしました。 バージョン番号が 3.0.x から 3.1.0 に上がったのは一部非互換がある可能性のある変更があるからです。 変更点 …

新しい csproj 形式で NuGet パッケージに外部 dll を含める方法

Livet を新しい csproj 形式に移行した後に苦労したのが、Windows API Code Pack の dll を LivetExtensions のパッケージに含めたいというものでした。 わかってしまえば簡単で、dll をプロジェクトに含めて Pack="true" PackagePath="lib\net452" の属性で…

Liver 3.0.3 をリリースしました。Prism + Livet (一部) のようなシナリオをサポート

リリースしました。リリースノートは以下になります。 github.com ポイント パッケージを分割しました。 今まで LivetCask 全部入りパッケージ LivetExtensions フォルダーダイアログ 今回 LivetCask Livet とは切っても切れないクラス群(ViewModel、Messen…

Livet v3.0.0 をリリースしました

WPF

今回の更新はアップデートをすると 100% ビルドエラー or ランタイムエラーになります。注意して更新してください。 リリースノートはこちら。 Release v3.0.0 · runceel/Livet · GitHub NuGet パッケージはこちら .NET Framework 用 NuGet Gallery | LivetC…

Go 言語で学ぶ AWS Lambda の学習用環境構築メモ

技術書典 7 で Goで学ぶAWS Lambda を見て BOOTH で購入しました。 booth.pm さくっとみてみると macOS 上に Python, aws cli, go, docker などを入れてます… う~ん、どれも普段使わない関係のものなので PC に直接入れたくない…!?ということで最近試して…

C++/WinRT で Windows Runtime Component を作って C# から呼ぶまで

ちょっと迷ったのでメモしておきます。 C+/WinRT自体についてはこちら docs.microsoft.com 上のドキュメントの、このページの部分に関連してます。 docs.microsoft.com docs.microsoft.com Step 1: Windows Runtime Component プロジェクトの作成と idl の定…

docker 上に Vue.js + TypeScript の開発環境を整えて Visual Studio Code で開く

とりあえず新しいマシンにして docker が快調に動くようになったので少し色々試してみてます。昨日は Python の環境で今日は Vue.js で試してみました。 blog.okazuki.jp これのいいところは、誰かが環境整えたら他の人は VS Code で開くだけで同じ環境で開…

プログラミング言語勉強用の環境を Visual Studio Code + Docker で手に入れてみる

Visual Studio Code を入れます。 azure.microsoft.com Visual Studio のリモート開発の拡張機能を入れます。 marketplace.visualstudio.com そして docker を入れます。 www.docker.com Windows の人は入れたら設定からドライブ共有をオンにしておきましょ…

Visual Studio Users Community #1 で「はじめよう Azure Functions」というタイトルで発表してきました

久しぶりにプライベートな活動として登壇してきました!! はじめよう Azure Functions from 一希 大田 www.slideshare.net Azure Functions の開発してましたが、Azure ポータルを一回も開かなかったセッションでした。 今回紹介したものの中では SignalR S…

Visual Studio Code で CLI から今開いている VS Code でフォルダーを開くコマンド

今まで $ code . してたのですが、これだと新しいウィンドウが開いてしまっていました。-r オプションをつけると今あるものを再利用してくれるようです。 さらに --add オプションはワークスペースにフォルダーを追加してくれる。 ということなので、例えば …

Promise 対応していないコールバック形式のライブラリーを Promise にしたい

Node.js v8.1 で util.promisify っていう関数が追加されてたんですね。 古き良き伝統にしたがったコールバック形式の関数を Promise を返す形にしてくれる。つまり await 出来るようになる! nodejs.org ということで、今時コールバック形式のライブラリな…

Surface Pro ユーザーが Dell の New XPS 13 2-in-1 を買ってみた感想

買ってみたのは以下の New XPS 13 2-in-1 です。 Dell Cinema & HDRディスプレイ搭載のXPS 13インチ7390 2-in-1ノートパソコン | Dell 日本 構成は以下のような感じ メモリ 32 GB CPU Core i7 SSD 1TB キーボード配列 US 色は黒 買い替え前は Surface Pro 20…

ASP.NET Core 3.0 + gRPC + WPF on .NET Core 3.0 で Azure AD を使って認証・認可

過去記事 blog.okazuki.jp blog.okazuki.jp 本文 前回、認証だけはやりました。今回はユーザーの権限とかを見て何かしたいとか、この API は呼べる、呼べないを構成していきたいと思います。 Azure AD のグループ機能で認可してみよう Azure AD のグループで…

ASP.NET Core 3.0 Preview 8 で gRPC に Azure AD 認証つけてみよう

さて、前回は簡単に呼び出す奴を作ってみました。 blog.okazuki.jp 今回は Azure AD 認証を付けたいと思います。 Azure AD にアプリの登録 では、Azure AD にアプリを登録します。サーバー側とクライアント側の 2 つを登録しましょう。 サーバーアプリの登録…