C++言語

C++プログラミング言語に関するガイド、チュートリアル、リソース。最新の構文、オブジェクト指向プログラミング、テンプレート、実用的なプロジェクトを含む。

ソフトウェアクラッシュ時にMini Dumpを書く方法

今月はまだ面白いことを書けていなくてすみません、とても忙しい月でした。 今日、Stack Overflow でデバッグに関する質問を見ました。そのユーザーはVisual Studioをデバッグモードで実行して、アプリケーションがいつ、なぜクラッシュするかを確認しようとしていました。 それは解決策ではありません。Windows APIにはこのような状況のための関数が用意されているからです。簡単に言えば、クラッシュ時にソフトウェアにMini Dumpを書き込ませ、それをVisual Studio(または任意のデバッガー)で開いて、正確にどこでクラッシュしたかを確認できます。 以下の例は、Windows上の任意の.exeまたは.dllです...

RTL関数を使用したDOSおよびNTパスの変換

この記事を読んでいるということは、ソフトウェアのためにDOSやNTパスを変換する方法を探しているということです。ここで今日まさにそれを学べるので安心してください! Windowsパス の問題は明らかです。非常に混乱します。もう一度言います、非常に混乱します。素晴らしいソフトウェアを開発していて、DOSとNTパスを変換する必要がある時、これが問題になります。 この記事では簡潔にまとめるようにしますので、始めましょう。 ntdll内にはさまざまな変換に使用できる非公開の関数があります。これらの関数はRtl*で始まり、以下の通りです: RtlDosPathNameToNtPathName_U(全Windowsバージョン)...

ランタイム暗号化文字列:パート1

ランタイム暗号化文字列今日はランタイム暗号化文字列の基本、なぜ文字列を暗号化する必要があるのか、そして独自の暗号化を作成する方法について学びます。 この記事では以下を理解し学びます: ランタイム暗号化と復号化とは何か なぜ文字列を暗号化する必要があるのか 誰でも機密データを閲覧できることを確認する 独自のカスタム暗号化を作成する ランタイム暗号化と復号化とはプログラム(ソフトウェア、アプリケーション)の実行中に暗号化および/または復号化されるデータのことを指します。データはメモリブロック、ネットワークトラフィック、文字列など、あらゆる種類のものがあります。 この目的で使用される最も一般的な方法の1つは(基本的な)難読化です。その他...