potisanのプログラミングメモ

プログラミング素人です。昔の自分を育ててくれたネット情報に少しでも貢献できるよう、情報を貯めていこうと思っています。Windows環境のC++やC#がメインです。

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

C++11?&Win API ドロップされたOLEデータオブジェクトのクリップボード形式を列挙する

Windows環境でエクスプローラーやブラウザからドロップされたデータのデータ形式を列挙するサンプルコードです。Unicode環境でWin32 APIとSTLを利用しています。例外処理などは省いています。 Windowsプロジェクトでのウィンドウクラスの登録、ウィンドウの…

C++11?&Win API ドロップされたOLEデータオブジェクトに含まれるShellItemを列挙する

ドロップされたOLEデータオブジェクトに含まれるShellItem(ファイル、フォルダ、特殊フォルダ等)を列挙するサンプルコードです。 #define STRICT #include <Windows.h> #include <ShlObj.h> #include <ShObjIdl.h> #include <vector> #include <string> #include <sstream> #include <iomanip> const TCHAR MY_WINDOW_CLASS_NAM</iomanip></sstream></string></vector></shobjidl.h></shlobj.h></windows.h>…

C# コントロールパネルに表示される項目のCLSIDをレジストリから取得する

コントロールパネルに表示される項目のCLSIDをレジストリから取得する方法です。 using Microsoft.Win32; const string ControlPanelNameSpacePath = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace"; using var key = OpenC…

C# コントロールパネルに表示される項目のローカライズされた名前をレジストリから取得する

参照設定 下記投稿のクラスを使用しています。 ドロップされたOLEデータオブジェクトのクリップボード形式実例 コード using System; using System.Collections.Generic; using System.Linq; using Microsoft.Win32; using Oxalis.Windows.Text; namespace C…

C# 7.1 コントロールパネルに表示される項目のCLSIDと名前をレジストリから取得する

はじめに コントロールパネルに表示される項目のCLSIDと名前(登録上の名前)をレジストリから取得する方法です。 コード using System; using System.Linq; using Microsoft.Win32; namespace ConsoleApp1 { class Program { static void Main(string[] arg…

C# 実行ファイルやDLL(PE形式のファイル)からバージョン情報を取得する

C#

実行ファイルやDLL(PE形式のファイル)のバージョン情報は.NET Frameworkや.NET Coreの標準機能で取得することができます。具体的にはSystem.Diagnostics名前空間のFileVersionInfoクラスを使用します。 .NET Coreのみ(トップレベルステートメントはC# 9以…