問題タブ [c++builder-5]

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 投票する
1 に答える
1595 参照

exception-handling - C++ Builder 5 の VCL 例外

コードで発生した例外を制御しようとしていますが、このサンプルは C++ Builder 5 で正常に動作しません。

例外が発生したときに catch ブロックに到達しないのはなぜですか?

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

c++ - プリンター Borland C++ 5 にアクセスできません

最近、Windows XP 32 ビットから Windows 7 64 ビットに移行しました。Borland C++ 5 IDE でどのプリンターにもアクセスできません。管理者としてログインすると問題が解消されるため、何らかの権限の問題のようです。問題を示す簡単な1行のプログラムがあります

PrintDialog1->Execute()

ダイアログが開きますが、プロパティ ボタンを押しても何も起こりません。プリンターのプロパティ (ページの向きなど) を変更しようとすると、「選択したプリンターでは操作がサポートされていません」というメッセージが表示され、いくつかのアクセス違反が発生します。

これが奇妙なビットです。プログラムを使用して何かを印刷し、プリンターのプロパティを開くと、問題は IDE で解消され、IDE を再起動するまで再発しません。すべてのプリンタへのフル アクセスを許可し、Borland がインストールされているディレクトリ c:\borland へのフル アクセスを許可しました。

助けてくれてありがとう。

0 投票する
0 に答える
123 参照

c++ - CryptDecrypt の結果は、Windows 8 では NULL のテーブルであり、Windows 7 ではそうではありません

CryptApi 関数 CryptDecrypt を使用して RSA 暗号化文字列を復号化しようとしています。コードは Windows 7 64 で動作しますが、Windows 8.1 64 では、復号化されたバッファの CryptDecrypt は \0 文字のテーブルを返します。エラーはありません。CryptDecrypt は 0 を返しません。GetLastError() は 0 です。

Windows で利用可能な別の CSP を使用してみましたが、何も変わりませんでした。

誰かが私にこの振る舞いを説明できますか?

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

c++ - C++ Builder 5 による単語の自動化

C++ ビルダー 5 アプリケーションを使用して Word を制御しようとしています。Word で作成した「.dot」モデル ファイルを開いて修正したいと考えています。「.dot」モデル ファイルには、いくつかのフィールドがあります。たとえば、、、などTitleLastName、 これらのフィールドを変更してテキストを入力し、「.dot」ファイルを変更せずに「Warning.doc」などの新しい名前でファイルを保存したいと考えています。FirstNameAddress

ファイルを開き、そこに含まれるフィールドの数を数えることはできますが、各フィールドを文字列に置き換える場合、OleFunction および OlePropertyGet メソッドに関する完全なドキュメントがないため、その方法がわかりません。ソースコードをこのメッセージに添付します。誰かこの問題を解決するのを手伝ってくれませんか?

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

c++builder - Borland C++ Builder 5 のコンパイル

古いプロジェクトをコンパイルすると、次のエラーが発生します。

[リンカーの致命的なエラー] 致命的: ファイル 'MSHTML.LIB' を開けません

それについて何か助けはありますか?

0 投票する
0 に答える
356 参照

c++ - Compiler generating invalid object file

I am working on merging some new trunk code into a feature branch on one of our large legacy projects. This project is written in C++ using C++Builder 5.0. We also use TwineCompile 3 to speed up our build times.

After the merge, I now sometimes get the following error when compiling:

This error only shows up when doing a release build with compiler optimizations turned off (which is how we typically release our code). If I re-enable compiler optimizations, or if I do a debug build, the error does not appear. Additionally, if I disable TwineCompile, the problem disappears.

Running TDump on the 'processor.obj' object file shows that it has a reference to an external function TPrintTickܩ ::Add. This function should actually be TPrintTicketQueue::Add. File processor.cpp contains the following code in one of the functions:

For reference, file printTicketQueue.h (which is included by processor.cpp) has the following code:

To further confuse matters, if I attempt to create a local pointer to a TPrintTicketObject in any function in processor.cpp, I get the following error:

Despite knowing that printTicketQueue.h has been included in processor.cpp, and thus TPrintTicketQueue should be defined.

I'm at a loss to explain what is happening here. Has anyone encountered a similar problem with C++Builder 5.0 or TwineCompile? Is there any way to solve or work around this problem?

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

c++ - TDateTimePickerで「今日」ボタンを非表示にする方法は?

私は現在、C++Builder 5 で構築されたレガシー プログラムに取り組んでいます。

私は、いくつかのTDateTimePickerコントロールがある領域に取り組んでいます。dtp 自体は正しく動作しますが、現在取り組んでいるローカリゼーションの問題により、ユーザーがクリックして今日の日付を自動的に選択できるピッカーの下部にある [今日] ボタンを削除しようとしています。

これに代わる方法は、フォーマットされた日付文字列を一番下から削除して、「Today MM/DD/YYYY」ではなく「Today」と表示することです。

今日のテキストを他の言語で書式設定できるソリューションをいくつか見つけましたが、C++ のソリューションはありません。高さやテキストなどの組み込み関数を使用してみましたが、うまくいきませんでした。私は通常、このコードで作業する人ではないので、簡単なことを見逃しているかもしれません。

編集: このプロジェクトの VM で Windows XP を使用しています。

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

batch-file - Borland エラー E2194: ファイルが見つかりませんでした。makefile に qoutes の問題があります

バージョンの下に、Borland上に構築されたプロジェクトがあります。

ここに画像の説明を入力

IDE内でクリーン/メイク/ビルドできます

ここに画像の説明を入力

今日まで、私はcmdでそれを作ることができました:

上記のコマンドを実行した後、.dllファイルがありました。

今日、システム全体で行ったのは、のアンインストールだけでMSSql Server、次のエラーが発生します。

だから今、私は結果を持っていません.dll

を使用して IDE から make ファイルを作成して実行すると、同じエラーが発生しProject -> Export Makefile...ますProject -> Execute Makefile

これは Makefile の一部であり、エラーの原因と思われます。

他に、自動ビルド システムの一部としていくつかのスクリプトを作成する前に、makefile を修正しました。

ここで何が起こっているのかを理解することは本当に不可能です... MSバッチファイルよりも16進エディタでコンパイルされたコードを理解する方が簡単だと思います...そこで行われていると思うのは、引用符の置き換えです。引用符を削除しようとしましたが、役に立ちませんでした...

このプロジェクトをcmdからコンパイルするのを手伝ってくれる人はいますか?

アップデート

OK、コマンドを取得して、make.exe -fTSAssdelay.makスペースを含むすべてのディレクトリ パスを削除しました。

ご覧のとおり、それらをまとめて保持することもできます。-IL:\TS\;L:\TSBF\

これで、.objファイルを取得できましたが、まだリンクする必要があります。

これらのパスをメイクファイルから削除すると、次のようになります。