C#でランダムに色を生成する方法

 

ランダムに色を生成

public class ExchangeUtil : PublicWebApiUtil {
    /// 
    /// ランダムカラー取得
    /// 
    /// シードとなる疑似乱数ジェネレータ
    /// 
    public Color GetRandomColor(Random r) {
        int red = r.Next(256);
        int green = r.Next(256);
        int blue = r.Next(256);

        return Color.FromArgb(red, green, blue);
    }
}

淡い色だけ生成

public class ExchangeUtil : PublicWebApiUtil {

    /// 淡いランダムカラー取得
    /// 
    /// シードとなる疑似乱数ジェネレータ
    /// 
    public Color GetPaleRandomColor(Random r) {
        int red = r.Next(100, 256);
        int green = r.Next(100, 256);
        int blue = r.Next(100, 256);

        return Color.FromArgb(red, green, blue);
    }
}

C#でメール送信


メール送信サンプル

public class ExchangeUtil : PublicWebApiUtil {
    /// <summary>
    /// メール送信
    /// </summary>
    /// <param name="fromAddress">送信元アドレス</param>
    /// <param name="toAddress">送信先アドレス</param>
    /// <param name="subject">件名</param>
    /// <param name="body">メール本文</param>
    public void SendMail(string fromAddress, string toAddress, string subject, string body) {
        MailMessage msg = new MailMessage();
        SmtpClient sc = new SmtpClient();
        try {
            msg.From = new MailAddress(fromAddress, "表示名");
            msg.To.Add(new MailAddress(toAddress, ""));
            //件名
            msg.Subject = subject;
            //本文
            msg.Body = body;

            //SMTPサーバーなどを設定する
            sc.Host = this.SmtpAddress;
            sc.Port = this.SmtpPort;
            sc.DeliveryMethod = SmtpDeliveryMethod.Network;
            //メッセージを送信する
            sc.Send(msg);
        } finally {
            msg.Dispose();
            sc.Dispose();
        }
    }
}

PowerShellを使ってポートの疎通確認をする方法

 PowerShellを使ってポートの疎通確認をする機会があったので、その時の方法をメモ。

疎通できている場合、TcpTestSucceededがTrueで表示されます。

・「Windowsキー + R」で以下を入力してPowerShellを起動。

powershell

・以下のコマンドを実行。

Test-NetConnection -ComputerName 192.168.10.66 -Port 475

ComputerName           : 192.168.10.66
RemoteAddress          : 192.168.10.66
RemotePort             : 475
InterfaceAlias         : イーサネット 4
SourceAddress          : 192.168.10.65
PingSucceeded          : True
PingReplyDetails (RTT) : 2 ms
TcpTestSucceeded       : True

C#で外為オンラインから為替レートを取得してみた

 為替レートを取得するサンプルです。

「Yahoo Finance」、「Google Finance」が廃止となったので、外為オンラインから取得してみました。


為替レート取得クラス

public class ExchangeUtil : PublicWebApiUtil {
    public enum CurrencyPairCode : int {
        //英ポンド/NZドル
        GBPNZD = 1,
        //カナダドル/NZドル
        CADJPY,
        //英ポンド/AUドル
        GBPAUD,
        //AUドル/円
        AUDJPY,
        //AUドル/NZドル
        AUDNZD,
        //ユーロ/カナダドル
        EURCAD,
        //ユーロ/米ドル
        EURUSD,
        //NZドル/円(jsonString);

        return ds.Tables[0];
    }

    // 指定した貨幣コードの始値を取得
    public Decimal GetOpenPrice(CurrencyPairCode currencyPairCode) {
        Decimal price = -1;

        DataTable exchangeTbl = GetExchangeRateTable();
        DataRow[] rows = (
            from row in exchangeTbl.AsEnumerable()
            let qOpenPrice = row.Field(EnumUtil.GetLabel(RateTableColIdx.Open))
            let qCurrencyPairCode = row.Field(EnumUtil.GetLabel(RateTableColIdx.CurrencyPairCode))
            where qCurrencyPairCode == EnumUtil.GetName(currencyPairCode)
            select row).ToArray();

        price = Decimal.Parse(rows[0][(int)RateTableColIdx.Open].ToString());

        return price;
    }

}

親クラス

public class PublicWebApiUtil {
    public PublicWebApiUtil() {
    }
    /// WebAPI呼び出し
    protected string GetResponseString(string url) {
        HttpWebRequest req = null;
        HttpWebResponse res = null;
        StreamReader sr = null;
        string jsonString = "";
        try {
            //サーバーからデータを受信する
            req = (HttpWebRequest)WebRequest.Create(url);
            res = (HttpWebResponse)req.GetResponse();
            sr = new StreamReader(res.GetResponseStream());
            //すべてのデータを受信する
            jsonString = sr.ReadToEnd();
        } finally {
            sr.Close();
            res.Close();
        }
        return jsonString;
    }
}

使い方

     public void GetPriceRate() {
         ExchangeUtil eu = new ExchangeUtil();
         //始値のレートを取得
         Decimal d = eu.GetOpenPrice(ExchangeUtil.CurrencyPairCode.USDJPY);
     }

厳選 Excelショートカット集

 

改ページプレビュー切替

操作ショートカットキー
改ページプレビュー「Alt」,「w」, 「i」
ページレイアウト「Alt」,「w」, 「p」
標準「Alt」,「w」, 「l」

ジャンプ

操作ショートカットキー
先頭にジャンプ「Ctrl + Home」(「Ctrl + Fn + Home」)
末尾にジャンプ「Ctrl + End」(「Ctrl + Fn + End」)
任意のセルをジャンプ「F5」

日付/時刻の入力

操作ショートカットキー
現在日付「Ctrl + ;」
現在時刻「Ctrl + :」
現在日時「Ctrl + ;」 + ' ' + 「Ctrl + :」

罫線

操作ショートカットキー
外枠罫線「Ctrl + &」(「Ctrl + Shift + 6」)
罫線解除「Ctrl + _」(「Ctrl + Shift + \」)

書式だけ貼り付け/値だけ貼り付け

右クリックとの合わせ技です。 または、右クリックの代わりに「Ctrl + Alt + v」でも同様の操作になります。

操作ショートカットキー
書式だけ貼り付け右クリック + 「s」 + 「t」
値だけ貼り付け右クリック + 「s」 + 「v」

行選択/列選択

操作ショートカットキー
行選択「Shift + Space」
列選択「Ctrl + Space」

フォント関連

操作ショートカットキー
打消し線のON/OFF「Ctrl + 5」
太字のON/OFF「Ctrl + b」
斜体のON/OFF「Ctrl + i」

シート操作関連

操作ショートカットキー
新しいワークシートを追加「Shift + F11」
次のワークシートへ移動「Ctrl + PageDown」
前のワークシートへ移動「Ctrl + PageUp」

ファンクションキー

ファンクションキー動作代替キー
「F2」アクティブセルを編集状態にする。
「F4」直前の動作を繰り返す。
「F4」(数式編集中)絶対参照と相対参照の切替える。
「F5」ジャンプダイアログボックスを表示。「Ctrl + g」
「F7」スペルチェック。(デフォルトでは英語のみ)
「F8」拡張選択モードの切替え。
「F9」開いているブックの全ワークシートを再計算する。
「F10」キーヒントの表示切替え。「Alt」
「F11」現在の選択範囲でグラフを作成。
「F12」「名前を付けて保存」ダイアログを表示。

無料版のMicrosoft TeamsでゲストユーザとWeb会議をする方法

 


Web会議開始までの流れ

大きく以下の流れで進めていきます。

  • 1.ホスト側でゲスト招待用のプライベートチームを作成
  • 2.ホスト側からゲストユーザを会議に招待
  • 3.ゲスト側が招待リンクをクリックして会議に参加
  • 4.ホスト側が参加を許可
  • 5.会議を開始

詳細手順


1.ホスト側でゲスト招待用のプライベートチームを作成

  • 新規チームを作成。
  • 「初めからチームを作成する」をクリック。
  • 「プライベート」をクリック。
  • チーム名を入力し、「作成」ボタンをクリック。
  • 「スキップ」ボタンをクリック。

2.ホスト側からゲストユーザを会議に招待

  • 「チーム」をクリック
  • 先程、作成した「ゲスト用チーム」を選択。
  • 「今すぐ会議」ボタンをクリック。
  • 打合せのタイトルを入力。
  • 「今すぐ会議」ボタンをクリック。
  • 「参加情報をコピー」ボタンをクリック。

3.ゲスト側が招待リンクをクリックして会議に参加

  • クリップボードに招待用のリンクがコピーされるので、HTMLメール等でゲストユーザにリンクを送付。
  • ゲストユーザがリンクをクリックすると、Teamsが起動します。
  • ブラウザ起動か、アプリ起動かを選択。

※アプリで起動すると、リモート操作が可能になります。

※リンクをクリックしても下記の起動画面が表示されない場合は、こちらを参考にして下さい。

  • ゲストユーザ名を入力
  • 「今すぐ参加」ボタンをクリック。

4.ホスト側が参加を許可

  • ゲストからの参加依頼が表示されますので、許可して下さい。

5.会議を開始

  • これでゲストユーザとWeb会議を開始できます。

ViEmuでCtrl+[でノーマルモードに移行できるようにした

 ViEmuをデフォルトのまま日本語キーボードで使うと「Ctrl+[」でノーマルモードに移行しない。

そこで、解決方法を見つけたので、備忘録として記録。


設定手順

  • 「C:\Users\(対象ユーザフォルダ)\」に「_viemurc」ファイルを作成。
  • 「_viemurc」ファイルを以下のように編集。
"<C-[><Esc>のように
nnoremap <C-[> :noh<CR>
  • 「拡張機能」-「ViEmu」-「Set Keybindings...」を実行

厳選 Visual Studioの便利なショートカット

  エラー箇所にジャンプ 「Ctrl + Shift + F12」 ブレークポイント 設定/解除 「F9」 有効化/無効化 「Ctrl + F9」 ViEmu特有 「:ls」:バッファナンバーのリストを表示。 「:b2」:バッファ2のファイルを開く。 「:n」:次のバッファのファ...