トルネード

毛利のメモ書き

2018-01-01から1年間の記事一覧

ローカルのC#から、AWSSDK.SimpleEmail を使ってメール送信

C#

Visual Studio 2017 C#を使ってAmazon Web ServiceのAmazon Simple Email Service (SES)を試す NuGet パッケージマネージャー コンソールでAWSSDK.SimpleEmail と、AWSSDK.Coreをインストールする Install-Package AWSSDK.SimpleEmail -Version 3.3.7.20 I…

std::shared_mutex, std::shared_timed_mutexを理解する

C++17では、std::shared_mutexが追加されています。 std::mutexとは違いstd::shared_lockが使えます。 std::shared_mutexは、std::mutexと同じようにstd:: lock_guardも使えます。 std::shared_mutex m1; std::lock_guard<std::shared_mutex> lock(m1); 下記は、std:: lock_guar</std::shared_mutex>…

SQL Server 肥大化した.ldfファイルを削除

SQL Serverでデータベースを作成すると、標準設定では復旧モデルが「完全」になっています。 復旧モデルが「完全」の場合、.ldfファイルにログが貯まる仕組みです。 重要なデータで復旧が必要な場合この.ldfファイルは重要ですが、 消えても問題無いデータの…

std::optional

std::optionalはstd::optional<int>と指定するとnulloptを代入できるので、0以外のnulloptが利用できる。 std::optional<int> i1 = std::nullopt; if(i1){ std::cout << i1.value() << std::endl; } std::optional<std::string>でも同じくnulloptが使えます。 std::optional<std::string> text1 =</std::string></std::string></int></int>…

VC++2017 #include <filesystem>

Visual C++ 2017で#include <filesystem>は可能 #include <iostream> #include <filesystem> int main() { using namespace std::experimental; auto b = filesystem::exists("c:\\hoge.txt"); std::cout << b << std::endl; return 0; } std::experimentalの中にあるようです。</filesystem></iostream></filesystem>

SqlClient.SqlDataReaderをジェネリックスで判断

C#

SqlClient.SqlDataReaderで型指定した条件を返す場合 private T GetSqlDataReader<T>(System.Data.SqlClient.SqlDataReader rd, int cnum) { try { if (!rd.IsDBNull(cnum)) { if (typeof(T) == typeof(string)) { return (T)(object)rd.GetString(cnum); } els</t>…

XAML UI Debugging Toolsを非表示にする

XAML Debugging Tools デバッグ実行時にアプリ画面上に表示されているツールバー 非表示に設定できます。 Menu[Tools|Options...]Optionsダイアログが表示されます。 [Debugging|General]内の「Enable UI Debugging Tools for XAML」のチェックを外す…

C# Console 文字列右詰め左スペース

C#

Console.WriteLine("{0}", ((int)1).ToString().PadLeft(10)); PadLeft()を使う。

[C#]System.Net.IPAddress IPアドレス判定

C#

IPアドレス判定 if (System.Net.IPAddress.TryParse("192.168.0.0", out out_ip_address)) { //IPアドレスです。 } else { //IPアドレス形式ではない。 }

[ .NET Core 2.1]ConfigurationManager app.configデータ取得

Visual Studio 2017 .NET Core 2.1で app.configを使う ConfigurationManager取得 NuGet パッケージマネージャーコンソールでConfigurationManagerを取得 Install-Package System.Configuration.ConfigurationManager -Version 4.5.0 SqlClient 4.5.1を取得 …

Xcode Version 10.0 Mojave ButtonClickイベント

Xcode 10.0 ボタンクリック イベント Xcode Version 10.0 (10A255) でプロジェクトを作成しボタン クリックイベントを作る Main.storyboardを開いて右上のボタンをクリックするとコントロール一覧が出ます。 画面にButtonをドラッグアンドドロップで配置後右…

Ubuntu 18.04.1 desktop にclangをインストール

Ubuntu 18.04にclang 6.0をインストールする sudo apt update sudo apt install clang clang --versionで確認すると clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin

-

-

UWP VC++ 画面遷移 Navigate

Visual Studio VC++ 2017のUWPでの画面遷移 以前C#での方法でも書いたが、Navigateを使う。 VC++でのNavigate 画面にボタンを配置し、クリックイベントを作る。 あらかじめ作っておいた「空白のページ」の名前はpage2 作成されたイベントメソッド内に下記を…

UWP C# DynamoDB Query

Visual Studio 2017 UWP C#プロジェクトでDynamoDB Query発行する場合 DynamoDBのQueryを発行する場合、QueryRequest.KeyConditionExpressionに条件を書きます。条件に変数が必要ですが、その変数はExpressionAttributeValuesに設定します。 Itemデータを取…

UWP C# DynamoDB Scan

Visual Studio 2017 C# UWPプロジェクトから DynamoDB接続 AWS SDK for .NET DynamoDB NuGet パッケージをプロジェクトにインストールします。Visual Studio 2017の、[パッケージマネージャーコンソール]から下記のコマンドを入力する。 Install-Package A…

UWP VC++ UTF-8から Platform::String変換

Visual Studio 2017 UWP C++でUTF-8のデータからPlatform::String変換する。 UTF-8の文字列データはstd::stringに収納できるので、一旦stringに入れておく。 std::function<Platform::String ^ (std::string)> Utf8ToPlatformString{ [](std::string stin) { std::wstring_convert<std::codecvt_utf8_utf16<wchar_t> > converter;</std::codecvt_utf8_utf16<wchar_t></platform::string>…

UWP VC++ HttpClientオブジェクトを使ったREST問合せ

Visual Studio 2017 UWP C++で、HttpClientオブジェクトを使ったREST問合せ方法 xaml側でButtonとTextBox・ProgressRingを配置します。ButtonクリックイベントでREST問合せし結果をTextBoxに表示します。 問合せ中はProgressRingを動かすようにします。

UWP VC++ JSON文字列データ解析方法

Visual Studio 2017 UWP VC++ の JsonObjectを使ってJSON文字列解析 void cpp_uwp::json_test::Button_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) { using namespace Windows::Data::Json; std::function<void(JsonObject^)> hhge{ [this](JsonOb</void(jsonobject^)>…

UWP VC++ JsonObjectでJSONデータ作成

Windows::Data::Json::JsonObject Visual Studio 2017 のUWP VC++ でJSONデータの生成方法です。 JsonObjectは、JSONデータの生成ができます。 xaml側でJSON生成するボタンと出来上がったJSONを表示するためのTextBoxを用意します。

UWP 入門 - HttpClientからJSON取得

Visual Studio 2017 UWP C#で、RESTへ接続しJSON取得するコードです。RESTへの接続は、HttpClientクラスを使います。 JSONデータは下記のようなデータです。 {"hoge":1010,"hoge2":"鉄人"} JSONの文字コードはUTF8です。UTF8のJSONデータ取得してからUnicode…

UWP VC++ Dispatcher->RunAsync()

C++

Visual Studio 2017 UWP VC++でDispatcher->RunAsync Dispatcher.RunAsyncはワーカースレッドから提供されたUIスレッドのコールバックをスケジュールし、結果を非同期的に返します。 もっといい方法あるのかと思うんですが、結局【標準のThread】をつかって…

UWP VC++ タイトルバー透過

「C#でタイトルバー透過」と同じように VC++でもApplicationViewTitleBarを操作します。 //App.xaml.cpp using namespace Windows::UI::ViewManagement; void App::OnLaunched(Windows::ApplicationModel::Activation::LaunchActivatedEventArgs^ e) { auto …

UWP VC++ TreeView

Visual Studio 2017 VC++ UWPでのTreeView xaml <Grid> <TreeView Name="TreeView1" Loaded="TreeView1_Loaded" ItemInvoked="TreeView1_ItemInvoked"/> </Grid> VC++コード void test::TreeView1_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) { #define IntToStr( ii ) static_cast

UWP 入門 - VC++ std::wstring to Platform::String

Visual Studio 2017 UWP std::wstring からPlatform::String へ std::wstring s1 = L"文字列"; //Platform::String ^s2; Platform::String ^s3 = ref new Platform::String(s1.c_str() ); Platform::String ^s4{ ref new Platform::String(s1.c_str()) }; Pl…

UWP 入門 - VC++ ウィンドウ半透明

Visual Studio 2017 UWP ウィンドウ半透明表示 C++版 Rectangleを半透明にしてウィンドウ壁紙を半透明表示させます。 <Rectangle Fill="Transparent" Name="Rectangle1" Loaded="Rectangle1_Loaded"></Rectangle> using namespace Windows::UI::Composition; public ref class MainPage sealed { Compositor^ _Compositor; SpriteVisual^ _SpriteVisua…

UWP 入門 - ウィンドウ半透明

Visual Studio 2017 のUWPウィンドウ半透明実装方法です。 Compositorクラスは、ビジュアルレイヤ・エフェクトシステム・アニメーションシステムにわたるWindows.UI.Composition名前空間のさまざまなタイプのファクトリとして使用できるアプリケーション用の…

UWP 入門 - TreeView イベント

TreeViewのItemInvokedイベントでアイテムが取得できます。 <TreeView Name="TreeView1" ItemInvoked="TreeView1_ItemInvoked" > </TreeView> args.InvokedItemでTreeViewNodeオブジェクトが取れます。 private void TreeView1_ItemInvoked(TreeView sender, TreeViewItemInvokedEventArgs args) { TextBlock1.Text = ((TreeViewNode)args…

UWP 入門 - TreeViewとTreeViewNode

TreeView Visual Studio 2017 UWPのTreeViewを使ってツリー表示させます。 <TreeView Name="TreeView1"> </TreeView> XAMLファイル側はこれだけです。 private void Page_Loaded(object sender, RoutedEventArgs e) { IList<TreeViewNode> l1 = new List<TreeViewNode>(); for (int i = 0; i < 20; ++i) { l1.Add(new TreeViewNo</treeviewnode></treeviewnode>…

UWP 入門 - SemanticZoom

SemanticZoomとは UWPでの、SemanticZoomとは、グループ化されたデータセットを2つの異なるビュー切替えナビゲートできるコントロールです。 ZoomedInView はコンテンツのメインビューで、個々のデータ項目を表示する。 ZoomedOutView は、 このビューにグル…