標記の件、
C++Builder2006でGDI+を使っていたソースを2007にバージョンアップすると、エラーが出るようになります。
CodeGearのサイトに
http://dn.codegear.com/fr/article/36871
GdiPlus ライブラリでは #define NO_STRICT をオフにする必要があります・・・等と書いてるのは見つけました。成る程、エラーコードも同じ感じです。
しかし、これを回避する方法であるところのSTRICTモードにする方法がわかりません。
#define STRICT
や
#include <windows.h>
などを散りばめて試行錯誤しましたが状況は全く変わりません。
それとも根本的に勘違いしてるでしょうか?
わかる方よろしくお願いします。
No.3ベストアンサー
- 回答日時:
★追記。
>また、インクルードされているであろう、gdi*.h には STRICTの文字列自体が見当たりません。
↑
検索する『WinGDI.h』ヘッダで『STRICT』が使われていますよ。
他にも WinUser.h、WinNT.h でも『STRICT』定数を参照しているようです。
・本当にヘッダファイルなどを検索してみましたか?
皆さん有難うございます。
コンパイラオプションのシンボル定義の中に、NO_STRICT というのが有るのを見つけました。
これを削除(これも、ただ削除しても反映されず結構難儀しましたが)することでエラーを回避でき、実際にGDI+も使えるようになりました。
余談ですがSTRICTをgrepしたのは既に書きましたようにgdi*.hだけでした。
横着はダメですね。申し訳ありません。
No.2
- 回答日時:
★アドバイス
・C++Builderは使っていないのですが、VC++2003.NET の環境では WinDef.h のヘッダに
次のような定義がありました。
#ifndef NO_STRICT
#ifndef STRICT
#define STRICT 1
#endif
#endif /* NO_STRICT */
WinDef.h ファイルの13行~17行目です。
この定義より『NO_STRICT』が定義されていないときだけ『STRICT』が定義されていないと
『STRICT』を『1』で定義するという意味らしいです。
>GdiPlus ライブラリでは #define NO_STRICT をオフにする必要があります・
このオフという意味が『NO_STRICT』を定義するなという事ではないでしょうか。
つまり『STRICT』も定義していなければ『STRICT』が『1』となるので『STRICT』が『1』でないと
GDI+ は使えない?という事かな。
・以上。参考に。
No.1
- 回答日時:
> #define NO_STRICT をオフにする必要があります
というのは
> #define STRICT
じゃなくて、
この#defineの行をコメントアウトするとか、
#undef NO_STRICT
するということじゃないんですか?
この回答への補足
その可能性も考えて、
#undef NO_STRICT
#define NO_STRICT
#undef STRICT
#define STRICT
など色々やってはみているんですが、ダメです。
また、インクルードされているであろう、gdi*.h には STRICTの文字列自体が見当たりません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
- C言語・C++・C# C言語:数値の桁数指定についての質問です。 8 2022/05/26 23:53
- HTML・CSS HTMLソースの質問 3 2022/07/28 13:29
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- Windows 10 Windows Updateが動作しません 7 2022/08/12 16:26
- その他(パソコン・周辺機器) タブレットで使用するUSBメモリについて 7 2022/05/26 14:27
- C言語・C++・C# LU分解法のピボット選択機能実装について(C言語・gcc-9) 1 2022/07/22 15:20
- 弁護士・行政書士・司法書士・社会保険労務士 行政書士試験の民法についての質問になります。 解除についての質問になります。 問 Aが、その所有する 2 2023/07/18 17:33
- Microsoft ASP C#からvbsを実行したい 5 2022/11/24 17:31
- JavaScript 初心者です。gulpでコンパイルができないので教えてください! 1 2023/05/17 17:07
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
syslog-ng make undefined
-
【VS2008 C++】2つのプロジェ...
-
Radiusのmake時に表示されるエ...
-
#pragma commentの相対パス指定
-
猫でもわかるWindowsのスクリー...
-
ゲームライブラリプロジェクト...
-
OpenSSLの共有ライブラリ(libcr...
-
#include <winreg.h>をインクル...
-
他のプロジェクトの関数にライ...
-
ShellExecute関数について(初...
-
error LNK2019: 未解決の外部シ...
-
gdi+ LNK1103
-
DirextXエラー:ファイル'dxerr9...
-
フリーでBCCでコンパイルすると...
-
visual studio community2017 O...
-
lvwReport/エラー/プロジェクト...
-
富士通のSoftune
-
C言語 コンパイルできない "vi...
-
python エラー
-
エクセルのエラーメッセージ「4...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スタティックライブラリ関係の...
-
スタティックリンクライブラリ...
-
fatal error LNK1104: ファイル...
-
VC++6.0からVC++.NET2005へ移植
-
C++Builder リンカエラーとは?
-
error LNK2001: 外部シンボル "...
-
#include <winreg.h>をインクル...
-
タイプライブラリのレジストリ...
-
【VS2008 C++】2つのプロジェ...
-
#pragma commentの相対パス指定
-
'stdafx.h'のエラーに関して
-
'd3dx9.lib' が開けません。
-
VC++でビルド時の、リンク警告 ...
-
「MFCを使用しない」から「MFC...
-
静的/動的リンクライブラリにつ...
-
error LNK2019: 未解決の外部シ...
-
MP3の再生
-
visual studio community2017 O...
-
Visual Studio 2022の『#define...
-
C++によるPostgreSQLの接続
おすすめ情報