top of page
カテゴリ
タグ
アーカイブ


C#でOS標準搭載のAPIを呼び出してみる
こんにちは、レイです。 早いもので入社してもうすぐ一年が経ちます。まだまだ慣れないことが多いですが、先輩方に教えてもらいながら日々業務に取り組んでいます。 先日、とある案件で Web カメラの映像を画面に表示するソフトを WPF で作る機会がありました。 今まではこういうとき OpenCV などの外部ライブラリを使っていたのですが、Windows 標準のカメラアプリでも同じことができるわけだし、外部ライブラリを追加せずにできないかなと調べたところ、WinRT という OS 標準機能を呼べば良さそうだったので試してみました。 1. .csproj を書き換える プロジェクト作成後、.csproj をメモ帳で開いて <TargetFramework> を次のように修正します。 WinRTが搭載されはじめたバージョンを明記することで、Windows.* の API がそのまま using できるようになります。ただし、ここで指定したバージョンより古い OS では動かなくなるので注意してください。 2. 画面(XAML) Image を 1 つ置きます。

レイ
15 時間前


C#でプロセスごとのCPU使用率を算出してみる
はじめまして、この記事を書いているレイです。 入社してもう少しで半年になる一番社歴の浅いメンバーです。まだまだ未熟ではありますが日々新しい技術や知識を吸収しながら業務に取り組んでいます。今回は業務の中で気づいたことについて書いていきます。 先日、あるプロセスのCPU使用率が時間の経過とともに上昇し、パソコンの動作が重くなるという問題に遭遇しました。調査する中で、タスクマネージャーに表示されるCPU使用率は「一定時間の間に、そのプロセスがどれだけCPUを占有していたか」という割合から計算されていることを知りました。 OSやタスクマネージャーが「使用率」を算出する仕組みは一見複雑そうに見えますが、単純な時間の計算で求められているのであれば、自作のプログラムでも近い値を再現できるのではないでしょうか。今回は、その仕組みをもとに実際に検証してみます。 差分からもとめる C#では Processクラス の GetProcesses()メソッド を使うと、実行されているすべてのプロセスのリソース使用状況を取得できます。 今回はこの中の TotalProces

レイ
3月10日
最新記事






bottom of page