VisualStudioのオフラインインストーラーを作ってみる
概要
近年のインストーラーはインターネット接続が前提 となっている。そのため、オフライン環境でアプリのインストールを行うとなるとちょっとめんどくさいことになる。 アプリによってはオフラインインストーラーがHP上で用意されてたりもするが、VisualStudioではそれがない。 オフラインインストーラーを作りたければ、インターネット接続が可能な環境で自作でオフラインインストーラーを作る必要がある。
VisualStudioをオフラインインストールする手順
- インターネット接続可能なマシンでVisualStudioのインストーラーをDLする
- DLしたインストーラに対し、コマンドを実行する
- オフラインインストーラーをインストールしたいマシンにコピーし実行
ソースコード
今回は.NET デスクトップ開発とC++ デスクトップ開発をインストールします。
@echo off setlocal rem オフラインインストーラーが作られる場所 set createPath=c:\vs_community rem オフラインインストーラーの言語(日本語) set language=ja-JP rem .NET デスクトップ開発 set dotNetDesktopDev=Microsoft.VisualStudio.Workload.NetWeb rem C++ デスクトップ開発 set cppDesktopDev=Microsoft.VisualStudio.Workload.NativeDesktop rem オフラインインストーラー作成 vs_community.exe --layout %createPath% --add %dotNetDesktopDev% --add %cppDesktopDev% --includeOptional --lang %language% exit
変更履歴
- 20190908:初版
指定した日付を持つファイルを削除するバッチ
概要
今回は ファイル名に8日前の日付を持つログファイルを削除するバッチ を作成しました。 doshbatch(Windowsコマンド)では日付の計算をゴリ押さないとできないため、powershellのコマンドを呼び出し対象日付を取得しました。
ソースコード
※削除対象のログファイルは、 log_yyyyMMdd.log とする。
@echo off setlocal rem 初版 rem 削除対象日付を取得 FOR /F "usebackq" %%a IN (`powershell [DateTime]::Today.AddDays"("-8")".ToString"("'yyyyMMdd'")"`) DO SET targetday=%%a rem echo %targetday% rem 削除対象ファイル名を設定 set targetFile=log_%targetday%.log rem echo %targetFile% rem 削除対象のファイルのフルパスを設定 set targetFilePath=C:\work\%targetFile% rem echo %targetFilePath% rem ファイルを削除する del %targetFilePath% exit
学べたこと
powershellでの実行結果を格納するには癖があること。 こんな書き方だとコマンドそのものが変数に格納されてしまう。
※この書き方はダメです
SET targetday=powershell [DateTime]::Today.AddDays"("-8")".ToString"("'yyyyMMdd'")
なので、下記書き方をする。
FOR /F "usebackq" %%a IN (`powershell [DateTime]::Today.AddDays"("-8")".ToString"("'yyyyMMdd'")"`) DO SET targetday=%%a
変更履歴
- 20190908:初版
GoogleChromeをシークレットモードで開くコマンド
需要がないと思いますが、GoogleChromeを常にシークレットモードで開くバッチを作ってみました。
バッチでなくても、Chromeのショートカットにコマンドを追加するだけでもできます。(てか、そっちの方が良いと思います。)
利用シーンといえば、第三者に履歴を残したくないときとかに使うべきでしょう。
例えば、共有PCで個人アカウントでログインするときなどでしょうか...。(意外と人のアカウントがIDの候補とかに出てくることがあるんですよね。)
ソースコード
※インストール先がデフォルトではない場合、CDコマンドの遷移先を変更してください。
ショートカット
ショートカットのリンク先に「--incognito」を加えるだけです。
リモートデスクトップ接続バッチ
プロジェクトによっては複数のサーバーにリモートデスクトップ接続することがあると思います。
私が経験したプロジェクトでは、多くのサーバーに接続し、必要なファイルをダウンロードしてきて、新旧比較を行ったりしていました。
そこで、接続するリモートデスクトップ接続を選択して自動で接続できるバッチを作ってみました。
ソースコード
解説
事前にリモートデスクトップ接続したいサーバー(PC)の情報をバッチファイルに組み込んで置き、バッチファイルを起動し、指定した番号を入力するとリモートデスクトップ接続できる内容となっております。指定したキーと一致しない場合は、再び入力状態に戻ります。
各変数については以下のとおりです。
・SERVERで接続したいサーバーのIPアドレスまたはホスト名を設定する。
・USERNAMEで接続したいユーザーのユーザ名を設定する。
・PASSWORDで接続したいユーザーのパスワードを設定する。
下記コマンドでリモートデスクトップの接続情報を設定する。
Cmdkey /generic:TERMSRV/%SERVER% /user:%USERNAME% /pass:%PASSWORD%
下記コマンドでリモートデスクトップの接続を行う。
Start mstsc /v:%SERVER%
更新履歴
2019年5月19日:初版
環境変数作成バッチ・環境変数Pathにパス追加バッチ
利用シーンがなかなか見当たらないですが、環境変数を作成するまたはPathに値を追加するバッチを作りました。
今のプロジェクトでJavaを使用するバッチを提供したところ、一人だけJAVA_HOME未設定の人が居て、バッチの実行がうまくいかなかったことがありました。
そこでJAVA_HOMEもバッチ内で作る処理を入れておけばエラーもなく実行できたと思い、このバッチを作るに至ったわけです。
ちなみにこのバッチでエラーが出ました。
ソースコード
解説
ENVIRONMENT_VARIABLEには新規作成したい環境変数名を入れます。
NEW_PATHには環境変数のパスを入れます。
管理者権限で実行する必要があります。
環境変数を作成するコマンドは、SETXコマンドです。このままだとユーザーの環境変数として追加されます。
/Mを追加すると、システムに追加となります。
環境変数Pathにも追加できれば良いなと思い、選択肢2と4を用意しました。
処理内容として、環境変数Pathに、Pathの値と;と新規追加したいパスを合体させているだけです。
更新履歴
2019年5月18日:初版
zipを解凍するバッチ
今の仕事でダウンロードしたDLLを解凍する作業があります。
過去の記事でファイルのダウンロードを自動化出来たので、DLLを解凍する作業も自動化しました。
ファイルダウンロードバッチと組み合わせることで、DLLのダウンロードから解凍までを自動化出来ます。
今回作ったバッチはJAVAを使用し、環境変数でJAVA_HOMEが設定してあることが前提となります。
出来ればWindows標準のコマンドだけで解凍を実現したかったので、他に良い処理が見つかればソースコードを修正し、記事を更新します。
ソースコード
※サンプルとして、カレントディレクトリ配下にあるtemp.zipという名のzipファイルを解凍する処理内容となっております。
解説
Javaをインストールしていないと使用できません。
SET JAVA_HOMEのコマンドでJavaのライブラリコマンドを使用できるようになります。このコマンドを実施しないと、後のjarコマンドでエラーとなります。
jarコマンドに-xvfオプションを付けることで解凍が出来るようになります。
jarコマンドの第一引数には、解凍したいファイルを指定します。
変数ZIP_FILEの内容を変更することで解凍できるzipファイルを変更することが出来ます。
更新履歴
2019年5月6日:初版
ファイルダウンロードバッチ
今の仕事で、ビルドされたDLLファイルをダウンロードする作業があります。
毎回、サイトにアクセスしてダウンロードするのがめんどくさいと思っていたので、この作業もバッチで自動化することにしました。
これで作業の時間短縮にも繋がるし、タスクスケジューラと組み合わせれば作業を完全に自動化できます。
ソースコード
※サンプルとして日経プロファイルから日経平均株価の日次データのCSVファイルをダウンロードすることにします。
ソースコード(Javaコマンドバージョン)
※Javaをインストールしていること、環境変数にJAVA_HOMEが設定されていることが前提となります。
▲実行画面
解説
bitsadminコマンドに/transfer オプションを付け、引数で指定したファイルをバックグラウンドでダウンロードしています。
引数として、ジョブ名、ダウンロードするファイルのパス、保存先(ファイル名含む)を指定する必要があります。
ジョブ名については特に指定はありませんが、他のジョブと名称が一致すると恐らく実行に失敗するので他のジョブと被らない名前を付けた方が良いと思います。
また、端末によるとは思いますが、私が使用しているノートPCの充電が20%未満の時、ダウンロードしてくれなくなりました。
いつでもダウンロードしてほしいので、Java版のソースコードを使用しています。
更新履歴
2019年5月6日:初版
2019年5月8日:ソースコード(Javaコマンドバージョン)を追加
SnippingToolが進化しました。
エビデンス取得や手順書作成で使用しているSnipping ToolというWindowsアクセサリにあるアプリケーションがあります。Windows10のバージョン1809より、アクションセンターから起動できるようになりました。もちろん、現行のSnipping Toolはいつも通り利用できます。今回は新しくなったSnipping Toolの使い方について紹介します。
※本記事でクリックするボタン、確認する項目は赤枠で囲んでおります。
Snipping Toolとは
画面の一部または全体をキャプチャするWindows標準でインストールされているアプリケーションです。
▲スタート > Windows アクセサリ > Snipping Tool で起動できます。
起動すると下記画面が表示され、[新規作成]ボタンを押すと、スナップショット取得モードになります。
[モード]ボタンを押すと、画面の一部または全体をキャプチャするか変更できます。
[遅延]ボタンを押すと、スナップショット取得モードに移行するまでの時間を0秒から5秒まで選択できます。コンテキストメニューをスクリーンショットに移したい場合に使用します。
※遅延モードはWindows8.1以前のOSにはありません。
バージョン確認手順
Windows10のバージョン1809未満では、新しいSnipping Toolは使用できません。下記手順で現在使用しているWindows10のバージョンを確認することが出来ます。
▲手順:Windowsの設定 > システム > バージョン情報
Windowsの仕様のバージョンの箇所に現在のバージョンが示されます。バージョンが1809未満の方はWindowsアップデートを実施すると使用できるようになります。
新しいSnipping Toolの起動方法
[画面領域切り取り]を押します。
下記ショートカットコマンドを入力し、アクションセンターを開きます。
▲ショートカットコマンド(Windows + A )でアクションセンターを表示できます。
画面中央上部には小さなツールバーが表示される
これで新しいSnipping Toolの起動は完了です。
各アイコンの説明
一番左のアイコンが、四角形の領域切り取りです。
右隣りの楕円系に+が書かれたアイコンが、自由形式の領域切り取りです。
更に右隣りの画面全体を表す様なアイコンが、全画面領域切り取りです。
一番右のアイコンは閉じるボタンで、Snipping Toolが終了します。
使い方
スナップショットを取得するとアクションセンターより通知が来ます。
アクションセンターを開くと、クリップボードに画像が保存された旨のメッセージと実際に取得したスナップショットが表示されます。
これをクリックすると[切り取り&スケッチ]の画面が表示されます。
[切り取り&スケッチ]の画面では、取得したスナップショットを保存したり落書きすることが出来ます。スナップショットを画像として保存したい場合は必ずこの画面で保存しないと保存されません。
保存するとファイル名にスクリーンショットを取った日時情報が入ります。現行のSnipping Toolではファイル名が常に同じなため、ファイル名を変更しないと上書き保存されてしまいます。新しいSnipping Toolではそこが解消されたのも大きな変化の1つだと思いました。
有線接続・無線接続を切替できるバッチ
職場でLANケーブルを着脱することが多く、アプリ等で簡単に切り替えられたらいいなと考えていました。そこで、バッチで有線接続と無線接続を切り替えられるネットワークアダプタ切替バッチを作成しました。ネットワークアダプタには優先度があります。有線(LANケーブル)と無線(Wi-Fi)の両方のネットワークに接続された状態の場合、有線接続を選択する設定がされております。これにより、LANケーブルを刺したままWi-Fi経由でネットワークを使用することが出来ません。そこでネットワークアダプタ切替バッチにより無理やり使用したい接続に変更します。
このバッチの強み
状況によってネットワークアダプタの優先度は変わるので、優先度に関係なく接続状態を変更できるのが本バッチの強みです。
このバッチの弱み
ネットワークアダプタを無効状態のままにする恐れがある
ネットワークアダプタを切り替えるのでなく、有効状態を変更しています。バッチを実行した後、全てのネットワークアダプタを有効状態にせずコマンドプロンプトを閉じてしまうと、ネットワークアダプタを無効状態のままにしてしまう恐れがあります。
管理者権限で実行する必要がある
ネットワークアダプタの有効状態を変更するには管理者権限が必要です。管理者権限で本バッチを実行しないと処理の実行に失敗します。
端末によってネットワークアダプタの名称が違うことがある
端末によってネットワークアダプタの名称が異なる場合があります。その場合はソースコードを修正し、使用するマシンや状況によってカスタマイズする必要があります。
ネットワークアダプタの確認手順
アダプターの設定の変更でネットワークアダプタを確認することが出来ます。
▲コントロール パネルネットワークとインターネットネットワーク接続 または コントロールパネル > ネットワークとインターネット > ネットワークと共有センター > アダプターの設定の変更 で表示できます。
ソースコード
※マシン環境や状況によって選択肢とif文内の処理を変更・追加してください。
バッチ実行画面
バッチを管理者権限で実行すると、下記ウィンドウが表示されます。ここで使用するネットワークアダプタの数値を入力しEnterを入力することで、ネットワークアダプタの状態が切り替わります。
ネットワークアダプタの優先順位を変えたいだけの場合
そもそも有線と無線の優先度を変えるだけで良いよって方もいると思います。有線と無線の優先度の変更方法は下記のとおりです。
1.ネットワークアダプタのプロパティを表示する
▲優先度を変更したいネットワークアダプタを選択状態にし、右クリックしプロパティを選択します。
※私のPCの場合PC本体の無線LANと外付けUSB接続の無線LAN(5GHz帯対応)がある為、Wi-Fiが2つあります。
2.TCP/IPv4のプロパティを表示する
▲インターネットプロトコルバージョン4(TCP/IPv4)を選択した状態でプロパティボタンを押します。
3.TCP/IP詳細設定画面を表示する
▲全般タブを表示し、詳細設定ボタンを押します。
4.自動メトリックのチェックを外す
5.インターフェイスメトリックに値を入力しOKボタンを押す
インターフェイスメトリックに入力できる値は1から100までです。値が小さいほど優先順位が高くなります。
これで優先順位の変更は完了です。
エディターについて
今まではテキストエディター(メモ帳やサクラエディタ)で開発を行っていました。
最近では、VisualBatと呼ばれるフリーのバッチ開発用のエディターを使用しています。
更新履歴
2019年2月14日:初版
2019年2月26日:「ネットワークアダプタの優先順位を変えたいだけの場合」を追記
2019年5月5日:「エディターについて」を追記
2019年5月6日:ソースコードにシンタックスハイライトを有効化
2019年5月13日:ソースコードにsetlocalの命令を追加
SQL Server Management Studio (SSMS) インストール手順
新人にSQL Server Management Studio(SSMS)のセットアップをお願いした際、DB(SQL Server)に繋がらないと質問を受けました。新人のPCを確認してみると、SSMSのみインストールされた状態で、SQL Serverがインストールされていませんでした。これじゃ接続できませんし、接続先がそもそも存在していません。(私の説明がそもそも悪いのですが...)良い機会だと思い、SQL ServerをインストールしSSMSを使えるようにするまでの手順をまとめてみました。
※本記事でクリックするボタン、確認する項目は赤枠で囲んでおります。
- SSMSとSQL Serverの関係
- SQL Serverのダウンロード手順
- SQL Serverのインストール手順
- SSMSのインストール手順
- 動作確認
- SQL Serverのインストールに失敗した場合
SSMSとSQL Serverの関係
SSMSとは、SQL ServerをGUIでデータベース(SQL Server)を管理するためのツールです。SSMSをインストールすることでコマンドでなくマウスを使ってSQL Serverを操作できます。 図で説明するとこんな感じです。
▲SQL ServerとSSMSの関係
SSMSだけでは、本当にやりたいSQL Serverの操作はできないわけです。そのため、SSMSをインストールしても何も出来ません。まずはSQL Serverをインストールしなければなりません。
SQL Serverのダウンロード手順
下記URLにアクセスし、インストーラーをダウンロードしてきます。
https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads
無料版のExpressをインストールします。下の画像の赤枠で囲んだ[今すぐダウンロード]をクリックします。
Expressの[今すぐダウンロード]をクリックするとSQLServerのインストーラーであるSQLServer2017-SSEI-Expr.exeがダウンロードされます。
SQL Serverのインストール手順
SQLServer2017-SSEI-Expr.exeをダブルクリックします。
[基本]をクリックします。
特に理由がなければ基本を選択します。
[同意する]をクリックします。
規約は念の為軽くでも良いので読んでおきましょう。
[インストール]をクリックします。
※インストールの場所は理由がない限り変更する必要はありません。
ダウンロードが終わるまで待ちましょう。
インストールが終わるのを待ちましょう。ダウンロードとインストールで私のマシンだと10分程度かかりました。(実施時刻:平日23時ごろ)
これでSQL Serverのインストールは完了です。
次にSSMSのインストールとなります。
SSMSのインストール手順
[SSMSのインストール]をクリックする。
または下記URLよりアクセスしSSMSのインストーラをダウンロードします。
[SQL Server Management Studio 17.9.1 のダウンロード] をクリックします。
約800MBのインストーラをダウンロードします。
※バージョンによってリンクの名称は変化します。
[SSMS-Setup-JPN.exe]をダブルクリックします。
[インストール]をクリックします。
インストールが完了するまで待ちます。
だいたい5分くらいで終わります。
これでSSMSのインストールは完了です。
動作確認
SSMSを起動します。
▲スタート > Microsoft SQL Server Tools 2017 > Microsoft SQL Server Management Studio よりたどれます。
サーバーへ接続します。
サーバーの種類:データベースエンジン
サーバー名:localhost¥SQLEXPRESS
認証:Windows認証
※サーバー名は.¥SQLEXPRESSでも表示可能です。
SQL Serverの良いところはWindowsにログインしていればDBにログインできるところですね。
オブジェクトエクスプローラーが見れたら接続完了です。
SQL Serverのインストールに失敗した場合
SQL Serverのインストールに失敗する人が多かったので、その対応方法を記述します。下記のような終了コード1638で失敗した場合は、あるプログラムをアンインストールすることで解決することが出来ます。
プログラムと機能を表示します。
▲コントロールパネル > プログラムのアンインストール で表示出来ます。
Microsoft Visual C++ 2017 Redistributable(x86)を2つアンインストールして、再度SQL Serverのインストールを試してみて下さい。これでインストールが出来るようになると思います。
ファイル名を一括置換するpowershellスクリプト
ファイル名を置き換えるpowershellスクリプトを作成しましたので紹介します。第一引数にディレクトリを指定し、その配下にあるファイルに対し、ファイル名に含まれるある文字列を指定した文字列で置換するスクリプトを作りました。簡単に言うと、ファイル名を置換するスクリプトです。引数に関しては実装で数を減らしたりもすることが出来るので、今回はあくまで一例としてみて下さい。置換対象、置換後の文字列は引数で指定しようとも思いましたが、私が普段使う用途だといちいち入力するのがめんどくさいので固定しています。仕事なのでディレクトリ内のファイル名を一括で置換するときの効率化にでもどうぞ。
スクリプトファイル名
ファイル名は自由に変更しても良いです。今回は下記ファイル名で手順の説明を進めさせていただきます。
ファイル名:Rename-Files.ps1
ディレクトリ:C:\work
ソースコード
下記ソースコードをコピーして使用してください。
▲変数beforeとafterは仕様用途によって変更して下さい。
実行方法
Windows PowerShellを表示する
▲アドレスバーにpowershellと入力すると、Windows PowerShellのウィンドウを表示できます。
Windows PowerShellが表示されます。
コマンドを入力しスクリプトを実行する
Windows PowerShellに下記コマンドを入力し、作成したスクリプトを実行します。
コマンド:.Rename-Files.ps1 "対象のディレクトリ"
※対象のディレクトリは、C:work est とする。
powershellの実行が許可されていない環境の場合
powershellの実行が許可されていない環境の場合は下記コマンドを先頭に加え実行してください。このコマンドを加えることでpowershellスクリプトの実行が許可されます。
追加コマンド:powershell -ExecutionPolicy RemoteSigned -File
コマンド:powershell -ExecutionPolicy RemoteSigned -File .Rename-Files.ps1 "対象のディレクトリ"
※対象のディレクトリは、C:work est とする。
動作確認
作成したpowershellスクリプトが正しく動作しているか確認します。
実行前
実行後
フォルダ内のファイル名が一括置換されました。
実行前:置換前
実行後:置換後
Logicool MX Vertical アドバンスエルゴノミックマウス レビュー
以前から肩凝りに悩まされており、肩凝り軽減の目的でLogicoolから発売されたエルゴノミクスマウス、MX VERTICALを購入しました。半年ほど利用した感想は、肩凝り改善には確かに効果があって良かったです。ですが、マウスとしての使いやすさに関してはイマイチといった感じ。1万円越えと値段の高さを考えると高評価にはならないマウスでした。今回はそんなMX VERTICALアドバンスエルゴノミックマウスについて紹介します。
良かった点
肩凝り対策には効果抜群
筋緊張を10%軽減しているとアピールしている通り、マウスを右っていて肩に力が入りません。それにより肩が凝ることがありませんでした。普通のマウスでは、マウスを使っているとだんだん肩が上がってきてしまいます。普通のマウスではリラックスした体制で握ることが出来ないことが原因みたいです。MX VERTICALアドバンスエルゴノミックマウスでは自然な体制で握ることが出来るため、肩こりが起きずらい見たいです。
充電式であること
MX VERTICALアドバンスエルゴノミックマウスは充電式です。なので電池を買う必要がありません。充電についてはフル充電で最長4ヶ月、1分間のクイック充電で3時間使用可能なようです。充電ケーブルはUSB-TypeCです。最新のiPadやAndroid、ニンテンドースイッチで採用されている汎用的なケーブルです。これにより、わざわざMX VERTICALアドバンスエルゴノミックマウスだけのためにケーブルを用意する必要がなくなるかもしれません。
接続先を3つ登録できる
MX VERTICALアドバンスエルゴノミックマウスでは、接続先を3つ登録できます。私の場合は、MX VERTICALアドバンスエルゴノミックマウスを常に持ち歩き、会社で使用したり家で使用したりしています。ボタン1つですぐに接続先を変更できます。
残念な点
右利き専用
このマウスは右利き専用のマウスです。ですので、左利きの方では使用するのが難しいです。
吹っ飛ばしてしまうことが多い
また、通常のマウスと比べ高さがあります。高さがあることにより、キーボードから手を離しマウスや別のものを探そうとすると、MX VERTICALアドバンスエルゴノミックマウスを吹っ飛ばしてしまうことが多々あります。
左右スクロールがない
左右スクロールが無い為、エクセルやブラウザで左右のスクロールが出来ません。ボタン割り当てを変更すると可能にはなります。値段を考えると左右のスクロールくらい付けてほしかったです。
戻る進むボタンが押しづらい
デフォルトで設定されている戻るボタン、進むボタンですが、押しづらいです。押すと、マウスが前方向に移動してしまいます。構造上仕方ないですが、もう少しこうならない構造で作ってほしかったです。
マウスの外観
エルゴノミクスというだけあって人間工学に基づいてデザインされた独特な外観です。
ブラックとスペースグレーで配色されています。
大きいですが思ったほど重くありません。意外と軽い。
以前使ってたMicrosoftのマウスとの比較です。MX VERTICALのほうがやはり大きい。
握り方
写真のとおりになります。親指の方にあるボタンを押すとマウスが押されてしまい、左クリックを押しそうになってしまいます。まだ発展途上感が否めません。また、右手専用で作られているため、左手でマウスを使用する方にはオススメできません。このマウスは右持ち専用のようです。
Logicool ワイヤレスキーボードK275 レビュー
良かった点
Unifyingレシーバー対応であること
Unifyingレシーバー対応により、他ロジクール製品を使っていればUSBレシーバーが1つで済みます。主にノートPCで使用している方であれば、USBが少ないのでこのUnifingレシーバー対応は非常に助かります。
電池が2年持つこと
公式HPからの情報では電池が2年持つそうです。電池持ちが良いということは電池を意識しなくても良いことになると思います。
感想
コスパ最強ワイヤレスキーボード。
一言でいうとこれですね。コスパ最強ということで、値段以上の価値はあります。
筆者的には配色が超好みです。Unifyingレシーバー対応なので、他のLogicool製ハードウェアを使用していたら、USBの使用箇所が1か所で済みます。
筆者はノートPCで本キーボードを使用しているので、USBの空きスロットの余裕がありません。ですが、このUnifyingレシーバーで、マウスとキーボードを1つのUSBでまとめることができ、非常に良かったとおもっています。
打鍵感(だけんかん)は、軽いタッチで文字が打てます。購入前に試し打ちしました。試し打ちできたとはいえ、PCにつなげていなかったので、どれくらいのタッチで文字が入力できるかはわかりませんでした。なので、購入後にキーが軽すぎることに気づきちょっと残念でした。
ショートカットキーも充実しており、メールボタン、電卓ボタン、音量調整ボタンは重宝します。これで、Outlookをタスクバーに常に表示せず済むようになりました。
ですが、電源のショートカットキーですが、これは危険です。作業中に誤って押すと、確認ダイアログもなしにスリープモードになります。
標準で電源ボタンを用意するなら、配置を改善してほしいと思いました。一応アプリをインストールすれば電源ではなく別の操作を割り当てられます。