問題タブ [afx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
237 参照

c++ - これらのパスワードを AFX でコーディングするために使用された関数は何ですか?

ソースが見つからない LOGIN DLL で使用されるパスワード ファイルの形式を調べようとしています。管理ツールは AFX で作成されているため、パスワードのエンコードに使用されたアルゴリズムの手がかりが得られることを願っています。

管理ツールを使用すると、エンコードされた 2 つのパスワードが得られます。最初は「dinosaur123456789」で、暗号化の 16 進数は次のとおりです。

恐竜パスワードの結果の 16 進値は次のとおりです。

00h: 4A 6E 3C 34 29 32 2E 59 51 6B 2B 4E 4F 20 47 75 ; Jn<4)2.YQk+NO 区 10h: 6A 33 09 ; j3. 20h: 64 69 6E 6F 73 61 75 72 31 32 33 34 35 36 37 38 ; 恐竜12345678 30h: 39 30 ; 90

別のパスワード「gertcha」は、e8h: 4D 35 4C 46 53 5C 7E としてエンコードされます。グラウト M5LFS\~

一般的な XOR を探してみましたが、何も見つかりませんでした。パスワードはパスワード ファイル内で同じ長さであるため、これらは可逆エンコーディングであると想定しています (別の時代のものでした!)。AFX クラスには、この種のことに使用される手段があったのではないかと思いますか?

誰かがエンコーディングを解決できれば、それは素晴らしいことです!

ありがとう、マシュー

[編集:] オーケー、まず先に進み、過去を新しいソリューションに置き去りにします。昔のデータをそのまま使えばよかったのに。確かに、誰かがそれをパズルとして解決したいのであれば、私はまだそれを使用できるようにしたいと考えています.

試してみたい方のために、2 つのパスワードを作成しました。

すべて「a」 - 19 個の a を含むパスワード: 47 7D 47 38 58 57 7C 73 59 2D 50 ; G}G8XW|sY-P 79 68 29 3E 44 52 31 6B 09 ; yh)>DR1k.

すべて「b」 - 16 個の b を含むパスワード。48 7D 2C 71 78 67 4B 46 49 48 5F ; H},qxgKFIH_ 69 7D 39 79 5E 09; i}9y^.

これにより、簡単な解決策はなく、何らかのフィードバックがあることがわかりました。

0 投票する
1 に答える
3118 参照

mfc - / clrを使用したMFCアプリケーションのコンパイル(ステップ1:ダイナミックDLLに対するリンク)

古いバージョンのDeveloperStudioでコンパイルされたMFCアプリケーションをVisualStudio2008に正常にアップグレードしました。MFCにいくつかの重大な変更があったため、必要な変更はごくわずかでした。すべてが機能するようになったので、次のステップに進み、を使用してソリューションをコンパイルします/clr

そのために、MSDNWebサイトで役立つ情報を見つけました。

これが私が取ったステップです:

  1. ランタイムライブラリマルチスレッドデバッグDLL(/ MDd)に設定します。
  2. 共有DLLでMFCを使用するようにMFCの使用を設定します。

ただし、そうすると、プロジェクトをリンクできなくなります。

  1. への参照はafxData解決できなくなりました。どういうわけか、afxDataMFCに対して静的にリンクしている場合にのみ表示されます。私のコードには、次の宣言があります。

    extern AFX_DATA AUX_DATA afxData;

    これは、静的にリンクされたMFCバージョンで正常に機能します。

  2. _afxThreadStateとへの参照_afxWinStateも解決できません。

完全なエラーメッセージは次のとおりです。

これが名前マングリングに関連している可能性がある場合に備えて...

それで、MFCに対して動的にリンクするために何ができますが、それでも参照afxData_afxThreadStateます_afxWinStateか?

0 投票する
3 に答える
4741 参照

windows - MFCを使用していない場合、afxres.hが必要ですか?.RCスクリプトから削除するにはどうすればよいですか?

RCスクリプトがわかりません。

作成しているDLLに、製品バージョン、ファイルバージョンなどのメタデータを含めたい。私はそれを行うために.rcファイルを使用しています。ビルドはmakefile駆動です。私が見つけた.rcscrpitの例をフォローしています。

テンプレートの.rcファイルにはafxres.hが含まれていますが、それは必要ないと思います。しかし、それを削除するだけでは、コンパイルエラーがたくさん発生します。

基本的な非MFCRCスクリプトはどのように見えますか?このようなものをすべて削除できますか?

0 投票する
2 に答える
1302 参照

c++ - プライベート MFC とは何ですか? 通常のインターフェイスからアクセスできないのはなぜですか?

私は GUI 開発に MFC を使用していますが、私がやろうとしていることに役立つ可能性のある関数を見つけました。関数は _AfxCompareClassName です。ただし、ディレクトリ「VC/altmfc/ src/mfc /afximpl.h」にあるファイル「afximpl.h」に含まれています。通常の mfc インクルードは、ディレクトリ "VC/atlmfc/ include " にあります。

私が収集したものから、src/mfc にあるファイルと関数はプライベート mfc と見なされ (この男によると)、使用すべきではありません。なんで ?この機能はいいですね。UI の現在の位置を知るのに役立ちます。

最終的に私がやりたかったのは、テキスト フィールド (編集コントロール) を編集するときのエスケープ/リターン キーの動作を変更することでした。私の質問は次のとおりです。

  • プライベート MFC 関数とは何ですか?
  • なぜそれらの関数を使用すべきではないのですか (私が集めたものからすると、それらは頻繁に変更されるため、使用すべきではないのです。別の理由はありますか?)
  • 私がやりたいことを行うためのよりクリーンな方法はありますか?

これまでのところ SO には何もないように見えるので、プライベート MFC に関する情報を入手できれば幸いです。

どうもありがとう、JC

0 投票する
3 に答える
8428 参照

c++ - windows.hおよびMFC

afx(MFC)プロジェクトにwindows.hを含めることができないのはなぜですか?

0 投票する
2 に答える
1199 参照

c++ - MFC Windows アプリケーションで __targv が NULL です。引数 == 1

次のように Windows アプリケーションをセットアップしています。 デバッグ - 使用するライブラリを静的にリンクする exe をビルドします。 リリース - DLL にリンクする exe をビルドします。

リリース バージョンを作成したところです。唯一の違いは、使用されているライブラリの 1 つが DLL としてビルドされていることです。

アプリケーションを実行すると、コマンド ライン引数にアクセスするたびにアプリケーションがクラッシュします。これは、__targv が NULL であるにもかかわらず、argc == 1 であるためです。

誰もこれに遭遇したことがありますか?

0 投票する
3 に答える
9782 参照

visual-studio-2008 - Visual C ++ 2008、#include"afxdb.h"中のエラー

adxdb.hの使用に問題があります。

私がしようとしました

しかし、私はこのエラーを受け取りました:

C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afx.h(24):致命的なエラーC1189:#error:/ MD [d](CRT dllバージョン)を使用してMFCアプリケーションを構築するには、MFC共有dllバージョンが必要です。_AFXDLLを#defineするか、/MD[d]を使用しないでください

それから私は追加しました

エラーメッセージが言ったように、そしてそのダースのエラーを受け取りました:

C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afxole.h(1455):エラーC2504:'CControlBar':基本クラスが未定義
1> C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afxole.h(1470):エラーC2146:構文エラー:';'がありません 識別子の前'm_tracker'1
> C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afxole.h(1470):エラーC4430:型指定子がありません-intと見なされます。注:C++はdefault-
int1> C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afxole.h(1470)をサポートしていません:エラーC4430:型指定子がありません-intと見なされます。注:C++はdefault-
int1> C:\ Program Files \ Microsoft Visual Studio 9.0 \ VC \ atlmfc \ include \ afxpriv.h(590)をサポートしていません:エラーC2504:'CControlBar':

これを正しくする方法について何かアイデアはありますか?PS VisualC++は初めてです

0 投票する
2 に答える
1597 参照

c++ - msvc2008 コンパイラを使用して Qt で afx_msg を使用する

タイトルが示すように、msvc2008 コンパイラを使用して Qt でプロジェクトに取り組んでいます。

私が作業しようとしているサンプル コードは、afx_maps を利用しています。私が知る限り (afx がどのように機能するかはよくわかりません)、以下のコードは、メッセージ WM_PI_RAWDATA_READY が受信されたとき (どこでどのように受信されたのかわかりません)、関数 OnRawDataReady がトリガーされます。

コードをプロジェクトにコピーして、ヘッダーに #include を追加しようとしましたが、次のエラーが表示されます。

これについて他の場所で見つけた修正は、ビジュアル スタジオのプロジェクト設定のように思われるため、それを回避する方法がわかりません。

これを修正する方法、またはafx_msgのものを回避する方法についてのアイデアはありますか?

どうもありがとう

0 投票する
1 に答える
412 参照

compression - MPEG-4 標準パート 16 (Animation Framework Extension) の実装

私は 3D メッシュ圧縮を見てきました。このアプリケーションは、ディスクに保存し、可能であれば圧縮を適用する必要がある 3D サーフェスのストリームを生成します。

私は、MPEG 4 アニメーション フレームワーク拡張機能 に出会いました。これは、私が望むことを実行しているように見え、国際標準であるという利点もあります。しかし、MPEG-4 AFX のすぐに利用できる実装を見つけることができないようです。ここにいる誰かが私がどこを見ればよいか知っているかどうか疑問に思っていました。

編集: 申し訳ありませんが、MPEG-4 AFX 標準を実装する C/C++ ライブラリを探していると言うべきでした。

ご協力いただきありがとうございます。

0 投票する
1 に答える
523 参照

c++ - 特定のmfcdllに対してAfxEnableMemoryLeakDumpを呼び出す

いくつかの外部dllを使用するVisualStudioUnicodeアプリケーションがあります。このアプリケーションでは、mfc100ud.dllがロードされます(Unicodeを表すuに注意してください)。アプリケーションは、mfc100d.dllにリンクされているいくつかの外部dllも使用します(したがって、Unicodeは使用しません)。

このアプリケーションでは、AfxEnableMemoryLeakDump(FALSE)を呼び出して、Afxの一部であるメモリリークダンプを無効にします。この関数を呼び出すと、このdllと直接リンクしているため、mfc100ud.dllになります。ただし、後で外部dllがロードされるため、mfc100d.dllもロードされます。アプリケーションを閉じると、mfc100d.dllがアンロードされ、このdllに対してAfxEnableMemoryLeakDumpが呼び出されなかったため、MemoryLeakDumpが引き続き発生します。

これを解決するために、次のようにしてdll内の関数を明示的に呼び出そうとしました。

装飾された関数名を検索するためにdumpbin.exeを使用しました。

ただし、GetProcAddressは32ビットと64ビットの両方でnullptrを返すため、これは機能しません。誰かがこれを手伝ってくれる?