プログラム系統備忘録ブログ

記事中のコードは自己責任の下でご自由にどうぞ。

WaniCTF 2021 write-up

CTF

WaniCTF 2021に参加しました。そのwrite-up記事です。問題等はwani-hackase/wanictf2021-writeupで公開されています。

TsukuCTF 2021 write-up

CTF

TsukuCTF 2021に、一人チームrotationで参加しました。そのwrite-up記事です。 公式WriteupがHome | SecHack365-Fans HomePageで公開されています。

setodaNoteCTF write-up

CTF

setodaNote CTFに参加しました。そのwrite-up記事です。 2021/09/05 01:30 追記: 解けなかった問題のところに、他の方のwrite-upを読んだ感想を追加しました。

CakeCTF 2021 write-up

CTF

CakeCTF 2021に、一人チームrotationで参加しました。そのwrite-up記事です。なお本コンテストは、昨年開催のInterKosenCTF 2020の後継のようです。 問題等はtheoremoon/cakectf-2021-publicで公開されています。

WaniCTF'21-spring write-up

CTF

WaniCTF'21-springに参加しました。正解した問題のwrite-up記事です。 問題等はwani-hackase/wanictf21spring-writeupで公開されています。

kurenaif Valentine Problems write-up

CTF

「kurenaif Valentine Problems」(ハッシュタグ #kurenaifChallenge)とは、IT系魔女VTuberとして活動なさっているkurenaifさんによるCrypto5問の問題集です。問題一覧や説明等はGithubにあります。またYoutubeにて説明動画の【1000人記念】Cryptoの問題を5問…

NotifyIconのContextMenuStripをメインディスプレイ限定で表示させたい

C#

(21:30頃: 対応後のコードにて使用していたScreen.PrimaryScreen.BoundsをScreen.FromPoint(point).Boundsに変更) NotifyIconにContextMenuStrip(=右クリック時のポップアップメニュー)を設定して表示する通常の方法だと、メインディスプレイのタスクバー表…

SECCON 2020 OnlineCTF SCSBX:Reversing write-up

CTF

SECCON 2020 OnlineCTFに参加しました。welcome, surveyの他にはrev1問だけ解けたので、その1問のwrite-up記事です。

InterKosenCTF 2020 write-up

CTF

InterKosenCTF 2020に、一人チームrotationで参加しました。 (追記: 問題等はtheoremoon/InterKosenCTF2020-challengesにて公開されています)

Beginners CTF 2020 write-up

CTF

Beginners CTF 2020に、一人チームrotationで参加しました。 今回は自動化には主にPython3を使いました。

Utf8JsonWriterがエスケープする文字を自作JavaScriptEncoderで減らしたい

C#

.NET Core 3.0にてUtf8JsonWriterが追加されました。 Json.NETでjson書き出しをしている箇所をUtf8JsonWriterに変えようとしたら、Utf8JsonWriterの文字列書き出しでハマったので紹介します。

Beginners CTF 2019 write-up

CTF

Beginners CTF 2019に、一人チーム「rotation」で参加しました。 CTFはksnctfに取り組んでいましたが、コンテストへの参加は初めてです。 普段C#を書いているので、ちょっとしたことにはC#を使いました。 環境: Win10 Version 1809 + Windows Subsystem for …

FOFX_RECYCLEONDELETEやFOFX_ADDUNDORECORDの振る舞いの実験

確認環境: Windows 10 Version 1809 (OS Build 17763.134), Microsoft Visual Studio Community 2017 Version 15.9.2 IFileOperation関係の前の記事: IFileOperation::NewItem()の使用例IFileOperation::SetOperationFlagsのドキュメントを読んでも FOFX_ADD…

IFileOperation::NewItem()の使用例

確認環境: Windows 7 SP1 64bit, Microsoft Visual Studio Community 2017(VisualStudio/15.0.0+26228.9) IFileOperation関係の前の記事: IFileOperationでZIPファイルを展開する方法 IFileOperation関係の次の記事: FOFX_RECYCLEONDELETEやFOFX_ADDUNDORECO…

IFileOperationでZIPファイルを展開する方法

確認環境: Windows 7 SP1 64bit, Visual Studio Community 2015 Update 3 IFileOperation関係の前の記事: IFileOperationで異なる種類の操作を登録した時のUI表示の話 (以前はC#のCOM相互運用を使っていました) IFileOperation関係の次の記事: IFileOperatio…

WPFのメニューとアクセスキーとIME状態

メニュー関連の前の記事: WPFでのメニューとキーボード操作時のフォーカス移動の話この記事ではContextMenuについてだけ記述していますが、Menuでも同様の現象が発生しますし同様の方法で対処可能です。

C#のリリースビルドのEXE中から.pdbのフルパスを除外する設定

確認環境: Visual Studio Community 2015(バージョン: 14.0.23107.156)アプリケーションを書き、リリースビルドを行い、ふと生成されたEXEファイルをバイナリエディタで開いて検索してみると.pdbのフルパスが含まれているではありませんか。 フルパスである…

IFileOperationで異なる種類の操作を登録した時のUI表示の話

確認環境: Windows 7 SP1 64bit IFileOperation関係の前の記事: IFileOperationで進行ダイアログ付きでディレクトリ操作を行う (.NETで必要な宣言や、本記事でも使っているCreateShellItem補助メソッドについて記述しています) IFileOperation関係の次の記事…

IFileOperationで進行ダイアログ付きでディレクトリ操作を行う

確認環境: Windows 7 SP1 64bit 目的: Explorerと同様の進行ダイアログを表示しつつ、ディレクトリの移動/コピー/リネーム/ゴミ箱に移動/完全に削除、を行いたいこの記事では、.NETからCOM相互運用およびP/Invokeを経由してIFileOperationを扱うサンプルコー…

VisualStudioのコード分析で識別子のタイプミスなどを検出する

2015/11/24 23:00頃 それなりに追記修正 2015/11/25 22:00頃 細々と追記修正 確認環境: Visual Studio 2015 Community Version 14.0.23107.0 D14RELC#プロジェクトで、全てのルールを使ってコード分析したときのメモです。 c# - Visual Studio Code Analysis…

WPFでのメニューとキーボード操作時のフォーカス移動の話

メニュー関連の次の記事: WPFのメニューとアクセスキーとIME状態この記事の参考元: WPF menu tab navigation - Stack Overflow

WPFのListBoxでマウスドラッグ中の要素選択を無効にする方法

確認時の.NET Frameworkのバージョン: 4.6.00081 参考元: Disable ListBox Dragging Selection in Single SelectionMode?2015/11/03追記: ListBox Class の派生である ListView Class の場合でも、同様の方法で対策可能です。

C#でJSONを読み込む方法によっては末尾コンマでも読める話

C#

確認時の.NET Frameworkのバージョン: 4.6.00081.NET標準のメソッドでJSONを読み込もうとした時、「末尾がコンマで終わる配列」「末尾がコンマで終わるオブジェクト」というJSON textではないものを、方法によっては読める、という記事です(長い)。 ("traili…

ControlTemplateとDataTemplateの違い、それとContentPresenter

2016/05/14: ContentTemplateを使用した場合とContentとして直接記述した場合のDataContextの違いを追記この記事では「コントロールとは何か」「データとは何か」については一切触れません。 代わりにVisual Treeに基づいて記述します。この記事で「子要素」…

Live Shapingを使ってコレクション要素を自動フィルタリングする例

19:00頃: 「一度に大量の要素を変更した場合の性能」を追記.NET Framework 4.5で ICollectionViewLiveShaping Interface が追加されました。このインターフェースを通じて、コレクション要素のグループ化/ソート/フィルタリングをリアルタイムに行えます。 …

TargetedTriggerActionの使用例

2015/09/22 xamlのサンプルをGridView(Header)RowPresenterを使用するものに変更、説明を追加。System.Windows.Interactivity.TargetedTriggerAction をWPFで使用するメモです。 確認時のExpression Blend SDKのDLLのバージョン System.Windows.Interactivit…

xamlでStaticResourceの結果にTypeConverterを適用する方法

2015/09/20 追記: 背景の説明に、xamlでの属性値の処理についての説明を追加 背景 MenuItem.InputGestureText と KeyBinding.Gesture に同じ文字列を二回記述したくない x:StaticにしてもStaticResourceにしてもマークアップ拡張を通す場合は、 XAML Syntax …

Visual Studio 2013から2015への乗り換えメモ

去る7/20にVS2015のRTMが公開されたので2013から移行した時のメモ書き記事です。Editionは2013・2015共にCommunity。

Recyclingを指定したWPFのTreeViewでShowLinesな表示にする

Recycling指定でも正常に動作する版の、完全なサンプルコードは最後に載せています。 確認環境 Visual Studio: Community 2013 プロジェクトの対象のフレームワーク: .NET Framework 4.5 PCにインストールしているフレームワーク: .NET Framework 4.5.51209 …

Directory.EnumerateFilesでハマった話

C#

指定ディレクトリ以下の指定拡張子の列挙に便利な System.IO.Directory.EnumerateFiles メソッド。 しかし、searchPattern引数に指定していない拡張子も列挙される場合があります。2015/11/10追記: MSDN日本語版に改めてアクセスしてみると、解説中の「メモ…