かずきのBlog@hatena

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

MSIX Packaging Tool が GA してました

techcommunity.microsoft.com やったね!あとは Visual Studio 2017 から生成出来ればいいんだけど。15.9 で対応かなぁ?

Bot Builder SDK v4 勉強ログ

ドキュメント読みながらのメモ Bot Builder SDK v4 の処理の流れ こんな理解 ユーザーからのメッセージ from 各種クライアント(slack, teams, etc...) -> Bot Connector サービス -> Bot Builder SDK v4 製のアプリ Bot Builder SDK v4 製のアプリがメッセー…

Go 言語勉強ログ その 3

Go

blog.okazuki.jp さて、引き続きやっていきます。A Tour of Go の Methods and interfaces からやっていきます。 メソッド 普通のオブジェクト指向言語にあるようなメソッドみたいに構造体やクラス内にメソッドを定義するというよりはレシーバーという特別な…

Go 言語勉強ログ その 2

Go

blog.okazuki.jp 引き続き A Tour of Go していきます。 ポインター Go 言語にはポインターがある。見初期化状態でも nil になる。 C 言語と同じで & でポインターを取得できて * でポインターの先の実態を見ることが出来る。 package main import ( "fmt" )…

Go 言語勉強ログ その 1

Go

さて、先日 Go 言語の環境を整えたので早速やっていこうと思います。 blog.okazuki.jp とりあえず A Tour of Go を見ながら思ったことを書いていきます。実際に勉強しようと思う人は A Tour of Go を見ましょう。素晴らしい翻訳をしてくれた人たちに感謝です…

Go の開発環境を Visual Studio Code に作ってみた on Windows 10

以下のサイトを参考にやってみました。 qiita.com Go は公式からインストール。 The Go Programming Language VS Code も公式からインストール。 azure.microsoft.com Go のインストールは c:\go にしました。インストール後環境変数を見ると GOPATH 環境変…

C++ の既存アプリにちょっとずつ Windows 10 風味を付け加えてみる

C++ ネタです。久しく触ってない言語なのと、へましたらメモリリークやらなんやらしやすい言語なので、そういうまずいところ見たら教えてください! ではやっていきます。 はじめに 先日、以下の記事を書きました。 blog.okazuki.jp 最初に触った言語が C/C+…

ネイティブの C++ から UWP の API を呼ぶ (C++/WinRT を使って)

UWP

C++/WinRT っていうのが追加されてたんですね。知らなかったのですが。 docs.microsoft.com これを使うと C++/CX とかみたいな魔改造言語じゃなくて C++ で UWP の開発が出来ますし、UWP の API を呼ぶのもお手軽です。 ちょっとやってみましょう。 環境設定…

Azure Functions v2 のプロジェクトを Run-From-Zip 用に固める Azure DevOps 用のビルドの YAML

はじめて YAML でビルド定義したけど簡単でびっくりしました。これは XAML より記述少なくていいわ…。 pool: vmImage: 'VS2017-Win2016' variables: solution: '**/*.sln' projects: '**/*.csproj' testProjects: '**/*Tests.csproj' buildConfiguration: 'r…

MFC のような C++ アプリから Microsoft ストアのアプリ内購入 API を使う

まず、MFCアプリのプロジェクトを appx にパッケージングします。 Visual Studio を使ってデスクトップ アプリケーションをパッケージ化します。 - UWP app developer | Microsoft Docs 次に UWP の API を使うための設定を以下のページに従ってやります。 W…

Azure Functions に興味を持った人が 0 円(クレカも不要)で実環境で体験する方法

先日開催された Serverlessconf Tokyo 2018 で少しでも Azure Functions 良さそうって思った人が一番手軽に体感できる方法はなんだろうと考えた結果の、これを使えばいいというのがあったので紹介します。 準備するもの パソコン(Win or mac os Linux) お気…

ReactiveProperty v5.3.0 をリリースしました

といっても Pull Request をマージしてパッケージングして nuget.org にあげただけです。 そろそろ Release ブランチにでも push したら自動でパッケージ公開されるようにしようかなぁ…。 NuGet のページはこちら。 www.nuget.org リリースのページはこちら。…

もうすぐリリースされる(はずの) MSIX の Modification Package を試してみよう

MSIX が発表されて久しいですが、Windows 10 October 2018 Update でついにリリースされると思われます。 現状も Insider Preview の Windows 10 を入れると MSIX Packaging Tool (Preview) をストアから入れて試すことが出来ます。 普通に MSIX Packaging T…

UWP の TreeView でデータバインディングを使ってデータを表示する(プレビュー)

UWP

Windows 10 April 2018 Update で追加された TreeView ですがデータバインディングでデータを表示することが出来なくて不満でしたが、今見たらプレビューで出来るようです。 ちょっと試してみました。使い方は簡単です。ItemsSource にコレクションをバイン…

Azure Functions v2 の HttpTrigger の関数を単体テストしたいね

端的にいうと HttpRequest クラスやら IActionResult クラスやらを引数や戻り値に持つもののテストです。 ここら辺を Moq を使ってモックしてみたいと思います。テスト対象は、HttpTrigger を使って作成したデフォルトの関数です。以下のような感じ。 using …

WPF や WinForms などで UWP のコントロールを使う XAML Island(プレビュー)

UWP のコントロールを WPF や WinForms などで使う XAML Island ですが現在プレビュー段階ですが試すことが出来るようになっています。 NuGet パッケージのソースとして https://dotnet.myget.org/F/uwpcommunitytoolkit/api/v3/index.json を追加することで…

.NET Core 3.0 でデスクトップアプリ開発を試してみる(プレビュー)

.NET Core 3.0 で WPF とかみたいなデスクトップアプリの開発がサポートされるというのが発表されて久しいですが試せる環境が整いつつあります。とりあえず試してみたログです。 まず、.NET Core 3.0 を以下の URL からダウンロードしてインストール github.…

Windows 10 の使い方メモ(Surface go 体験記を読んで思ったこと)

Surface Go をゲットした人の体験記を読んでいて、思ったことと、これは知らないと無理だよなぁと思ったことなどを書いていこうと思います。 uzulla.hateblo.jp はじめに はじめになのですが、私はマイクロソフトに所属して 1 年半くらいのマイクロソフトび…

Livet 用の Visual Studio 2017 拡張機能を公開しました(テンプレートやスニペット入り)

意外と作るのが簡単だったので作ってみて公開しました。 marketplace.visualstudio.com なんか文字化けしてますが、後でなおそう…。とりあえず体調悪くて仕事休んだけどパソコンの前に座ってるくらいは平気なのでリリースしました。C# のみです。 VB は構文…

LivetCask v2.0.0-pre1とLivetExtensions v2.0.0-pre1 を公開しました

とりあえずプロジェクトの構造を自分好みにしたのとターゲットフレームワークを現在サポートされている最低バージョンの .NET Framework の 4.5.2 まで上げました。 NuGet 以外は今のところメンテナンスするつもりはありませんが、気が向いたら vsix 作って…

Livet のメンテナーになりました

WPF

まだ権限追加してもらっただけで何もしてないですが尾上さん作の WPF で MVVM で開発するときに国内でよく使われてる Livet のリポジトリに push する権限と nuget にパッケージをアップロードする権限を付けてもらいました。 以下のようなポリシーでやって…

LINE Clova のスキルと Windows 10 の連携

LINE Clova にアカウントリンキングの機能があるので、割と簡単に特定サービスと連携したスキルが作れます。 今回は、これを利用して Microsoft Graph API にある Project Rome を叩いて Windows 10 のアプリを起動してみました。 動作してる様子はこちら。 …

スマートスピーカーで時間のかかる処理を呼び出す方法と実装方法

スマートスピーカーって何処のやつも大体数秒でレスポンス返さないとタイムアウトになってしまいます。 なので、ちょっと時間のかかる外部 API を呼び出したらタイムアウトしてしまいスマートスピーカーがスキルを起動できないなどの定型文を話して終了して…

Azure Functions v2 で設定情報を使う方法

local.settings.json やアプリケーション設定に設定された情報を Azure Functions v2 で使う方法をメモしておきます。 Microsoft.Extensions.Configuration を使います。 ASP.NET Core ではおなじみのやつですね。local.settings.json を使うために Executio…

LINE Clova のスキルを開発するときに便利なもの

LINE Clova のスキル開発するときって不便じゃないですか? 公式のサイトのシミュレーターというか対話モデルをテストするところで文字打って確認できるけど、実際の会話の流れとか(SessionAttributes の値とか…)も一緒に送ったり LaunchRequest とかはそ…

タイプセーフな Clova Extension の開発環境を求めて on Azure Functions その2

1 つ前の記事ではタイプセーフにしたいと思って頑張った結果 TypeScript にトライしてみました。 blog.okazuki.jp 今回は C# でいってみようと思います。 開発環境 とりあえず Windows, macOS, Linux あたりで行けるはずですが私の環境は以下のような感じで…

System.dll という名前のファイルを Visual Studio のプロジェクトに含めると System の参照が自動で置き換わる?

C#

知らなかったんですが、プロジェクトの中に System.dll というファイルがあるとプロジェクトの参照のところの System が置き換わるんですね…。 ふーむ。 追記 プロジェクトのルートフォルダーに置いたら検索の優先順位的に仕方ないかなと思うのですがルート…

タイプセーフな Clova Extension の開発環境を求めて on Azure Functions

やってみた。実用に耐えうるかはわからないけどメモ。 環境構築 node.js 8.11.x(LTS) Azure Function Core Tools v2(preview) VSCode Azure 拡張機能 Azure Functions 拡張機能 TypeScript 3.0 npm install -g typescript やってみよう Visual Studio Code …

Azure Functions で clova-cek-sdk-nodejs を使ってみよう

前試したときはダメだったのですが azure-function-express というモジュールが先日 v2.0.0 にアップデートしてたので試してみました。環境は以下のような感じです。 Azure Functions Core Tools 2.0.1-beta.38 node.js v8.11.4 ただ、前と同じでノーレスポ…

Clova Extensions Kit のチュートリアルを Azure で動かす手順

Clova Extensions Kit のチュートリアルにサイコロをふってもらうやつがあります。 これを動かしてみましょう。 まず、ドキュメントにある通り clone してきて npm install までやります。 git clone https://github.com/line/clova-extension-sample-dice.g…