こんにちは。
Borland C++でC++を始めて2日目なのですが、質問させてください。
メモ帳のエディタを使って簡単なプログラムを作成してコマンドプロンプトからコンパイルしています。
質問は、DLLとOCXを作成したいのですが、可能でしょうか? 作成手順がさっぱりわからなくて、参考になるサイト等を教えていただきたいです。
よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QCPad for Borland C++Compilerのダウンロード

CPad for Borland C++Compilerのダウンロードは
どこですればよいでしょうか?
もう、かなり前のソフトなので、
全然見つかりません。
よろしくお願いします。

Aベストアンサー

>全然見つかりません。

CPad で検索すればすぐに見つかりますよ。

「CPad(BCPad)」と「Borland C++Compiler」は別物ですよ。

CPad
http://cpad.michikusa.jp/

http://hp.vector.co.jp/authors/VA017148/pages/cpad.html

C++Builderのトライアル版
http://www.enri.go.jp/~fks442/K_MUSEN/bcc.htm
http://www.codegear.com/jp/downloads/free/cppbuilder

QBorland C++ Compiler 5.5でland関数がコンパイルできません

初歩的な質問ですみません。C言語のプログラミングの質問です。
タイトルどおり、Borland C++ Compiler 5.5でland関数がコンパイルできません。OSはWindows XPで、「c言語を始めよう!」を使ってプログラムを作っています。
今まで学校でunixを使っていたので、その時は何の設定もせずに使えたので普通に使ったのですが、”プロトタイプ宣言のない関数 'rand' の呼び出し”や”プロトタイプ宣言のない関数 'srand' の呼び出し”というエラーが出ます。
timeを使うために#include <time.h>が必要だったり、そのようなunixでは不必要だった下準備が必要なのでしょうか?

Aベストアンサー

rand()関数はstdlib.hをインクルードする必要があります。
関数名で検索すると、必要なヘッダファイルがわかりますよ。

QCpad for Borland C++Compiler を使っている方に質問です。

上にある「実行」をクリックすると、一番下に「設定(s)」が現れ、そこをクリックすると設定画面が現れます。
そこで「コンパイラのパス」と「ヘルプファイルのパス」を入力したいんですが、このパス(パスワードの略?)って、どこを参照すればわかりますか?

パソコンが本当に苦手で、苦労してCpad for Borland C++Compilerをインストールしたのですが、プログラムを入力して「コンパイル&実行」ボタンを押したら「コンパイラ""が見つかりません」と出ました。多分、「コンパイラのパス」が入力できればプログラムは実行できるんじゃないかと思います。

Aベストアンサー

使ったことないけど…

http://www.ee.fukui-nct.ac.jp/~yoneda/tips/ip/BCPad.html

*「パス」は「パスワード」ではなく「path」の意味です

QBorland C++ Builderで簡単なC言語プログラムの作成・実行

Borland C++ Builderで簡単なCのプログラムを作り実行させるにはどうしたらよいですか?
DOS窓上でコンパイルするのではなく、Borland C++ Builderのメニューから行いたいのです。
一応、「ファイル→新規作成→その他→Cファイル」でCのファイルは作成できるのですが、このファイルを「プロジェクト→ユニットのコンパイル」でコンパイルすることができません。
Formオブジェクト(?)を作成しておくとコンパイルできます。
Formは特に必要ないので、FormなしでCのファイルだけをコンパイルしたいのです。

DOS窓でのコンパイル・実行はできます。

事情があってBorland C++ Builderを使わなくてはなりませんので、他のIDEはこの際全く解決になりません。

よろしくお願いします。

Aベストアンサー

プロジェクトを[コンソールアプリケーション]で作成して置く必要があります。

TurboC++での例。
画面は多少違いますがC++Builderでも同じです。
http://www.asahi-net.or.jp/~qb3k-kwsk/rpg/program/tool/tcpp/tcpp.html

QBorland C++ Compiler でスタティックリンクライブラリを作る

現在、Borland C++ Compilerを使ってプログラミングをしています。
自分で作った汎用ヘッダファイルを、いちいちコピー&ペーストして、新しいプロジェクトごとに入れるのはめんどうなので、何かいい方法がないかと探していました。

すると、なにやらスタティックリンクライブラリというのがあつらえ向きだと思ったのですが、やり方がよくわかりません。
ちなみに、できればDLLは作りたくないです。

もしかして、Borlandのではできないのでしょうか。
どなたか、ご存知の方がいらっしゃいましたらご教授ください。

Aベストアンサー

どちらにしても、汎用のヘッダファイルやソースをプロジェクトごとにコピーするというのは、適切ではありません。
面倒だという以上に、本来同じもはずのものが複数存在すると、かならず内容の違ったもの(終生忘れなど)ができてきてしまうからです。

また、「スタティックリンクライブラリ」というもの自体は、dll や、動的につなぐライブラリの情報を、通常の lib ファイルとして生成しておくものです。メーカーが提供する dll など、スタティックリンクライブラリを作成すれば、このスタティックリンクライブラリをプロジェクトにつなぐだけで、dll を呼び出すことができます。

さて、本題ですが、自作の標準ヘッダをいつも使うようにするには
・オプション → プロジェクト で、ヘッダインクルードファイルのディレクトリに、自作のヘッダのディレクトリを追加しておく
・#inlcude のあとのファイル指定に、フルパスでファイル名を記述しておく。
のいずれかの方法があります。

また、自作のソースをいつも使う場合には、
・ライブラリアン(tlib.exe)で、ソースをライブラリにした上で、オプション → プロジェクトで、ライブラリのディレクトリにそのディレクトリを追加しておく
・プロジェクトにファイルを追加するときに、(プロジェクトのフォルダではなく)そのソースファイルが存在するフォルダのソースを追加する

のいずれかがあります。

私は、いずれも後者の方法でやっています。

どちらにしても、汎用のヘッダファイルやソースをプロジェクトごとにコピーするというのは、適切ではありません。
面倒だという以上に、本来同じもはずのものが複数存在すると、かならず内容の違ったもの(終生忘れなど)ができてきてしまうからです。

また、「スタティックリンクライブラリ」というもの自体は、dll や、動的につなぐライブラリの情報を、通常の lib ファイルとして生成しておくものです。メーカーが提供する dll など、スタティックリンクライブラリを作成すれば、このスタティックリンクラ...続きを読む

Qvisual C++だとコンパイルできるのに、borlandだとできません。

borlandと、VisualC++の両方使っているのですが、VisualC++だとコンパイルでき、実行できます。
しかし、Borlandでコンパイルしようとすると、「宣言が正しく終了していない」とエラーが出てしまいます。

学校の課題で、Borlandでコンパイルしたいのですが、どうすればいいのか分かりません。
ソースを載せるので、どこがいけないのか、教えてください。

sin(x)の値を入力して、x度を求めるプログラミングです。


#include<stdio.h>
#include<math.h>

int main(void)
{
double x_mid, x0=0, x1=90, y_mid, y0, y1, M_PI=3.14159265358979;
float y_ans;

printf("sin(x)はいくつ?\n");
scanf("%f", &y_ans);

for( ; ;)
{


x_mid=0.5*(x0+x1);
y0=sqrt(1-cos(M_PI*x0/180)*cos(M_PI*x0/180));
y1=sqrt(1-cos(M_PI*x1/180)*cos(M_PI*x1/180));
y_mid=sqrt(1-cos(M_PI*x_mid/180)*cos(M_PI*x_mid/180));

if(y0-y_ans>0 || y1-y_ans<0)
{
printf("答えが出ません。もう一度sin(x)は?\n");
scanf("%f", &y_ans);
continue;
}


if(fabs(y0-(double)y_ans) <= 0.000000001)
break;

else if((double)y_ans < y_mid)
{
x1=x_mid;
}
else
{
x0=x_mid;
}
}

printf("sin(x)=%fのとき、xは%f度\n",y_ans, x0);

return 0;
}

borlandと、VisualC++の両方使っているのですが、VisualC++だとコンパイルでき、実行できます。
しかし、Borlandでコンパイルしようとすると、「宣言が正しく終了していない」とエラーが出てしまいます。

学校の課題で、Borlandでコンパイルしたいのですが、どうすればいいのか分かりません。
ソースを載せるので、どこがいけないのか、教えてください。

sin(x)の値を入力して、x度を求めるプログラミングです。


#include<stdio.h>
#include<math.h>

int main(void)
{
double x_mid, x0=0, x1...続きを読む

Aベストアンサー

BorlandC++の場合Math.hのなかで無条件で M_PIをdefineしてるのでご質問のような現象になると思われます

#include <Math.h>
のつぎに
#ifdef M_PI
#undef M_PI
#endif
の3行を追加してみましょう

これは M_PIがマクロ定義(#defineによる定義)がされているなら
その定義を解除するという記述です

Borlandの場合
double x_mid, x0=0, x1=90, y_mid, y0, y1, M_PI=3.14159265358979;
の記述が プリプロセス(マクロの置換など)により
double x_mid, x0=0, x1=90, y_mid, y0, y1, 3.14159265358979323846=3.14159265358979;
といった 定数項に定数項の初期値を代入するといった宣言文になってしまうためにご質問のようなエラーになります

VC++の場合 6.0以前は M_PIマクロの定義がないようです
2003以降は math.hで定義されていますが『_USE_MATH_DEFINES』をマクロ定義に追加しないと有効になりません

BorlandC++の場合Math.hのなかで無条件で M_PIをdefineしてるのでご質問のような現象になると思われます

#include <Math.h>
のつぎに
#ifdef M_PI
#undef M_PI
#endif
の3行を追加してみましょう

これは M_PIがマクロ定義(#defineによる定義)がされているなら
その定義を解除するという記述です

Borlandの場合
double x_mid, x0=0, x1=90, y_mid, y0, y1, M_PI=3.14159265358979;
の記述が プリプロセス(マクロの置換など)により
double x_mid, x0=0, x1=90, y_mid, y0, y1, 3.1415926535897932...続きを読む

QHot Soup ProcessorとBorland C++ Compiler

プログラムする時にHot Soup ProcessorとBorland C++ Compilerでどちらがお勧めでしょうか?
Cはかじった時があるのでBorland C++ Compilerがいいかなと思うのでしょうがどうでしょう?
目的は主にゲームですがその他にも作りたいので
レジストリの操作が出来る
ユーザーがフォントを選択できるリストを作れる
のがいいです。

Aベストアンサー

ゲームプログラムなら、どちらでも技術さえあればできます。
ただ、比較的手軽なのはHSP(Hot Soup Processor)です。色々、ゲーム作りを手助けするためのツールも作られているので。

Cをかじった程度でBorland...から始めるのは、恐らく速攻で挫折します。(頑張れる人ももちろんいますが)
HSPで、レジストリを変更するためのツールを作っている人もいるくらいなので、ちゃんとできます。
フォントの選択も、プログラムを組めばできます。
もちろん、CまたはC++でもできますが、なかなか大変です。Windowsプログラムを覚えるだけでも相当なものです。
HSPは、基本的な一番大変な部分(例えば、ウィンドウを表示するだけ)を、ある程度勝手に処理してくれますが、C++は、それを自分でやる必要があります。

なので私だったら、比較的いきなりそれらしいゲームをプログラムすることができるHSPから始めます。
それでも、ゲームによっては相当な努力と忍耐(それからプログラムのセンス)を必要とします。(種類によっては、思ったより簡単にできるかもしれません。)

まずは、楽しめないと長続きしません。
HSPでゲーム作りの基本を勉強して、もっと違うことをやりたくなったら、C++に移っても良いかも。

ゲームプログラムなら、どちらでも技術さえあればできます。
ただ、比較的手軽なのはHSP(Hot Soup Processor)です。色々、ゲーム作りを手助けするためのツールも作られているので。

Cをかじった程度でBorland...から始めるのは、恐らく速攻で挫折します。(頑張れる人ももちろんいますが)
HSPで、レジストリを変更するためのツールを作っている人もいるくらいなので、ちゃんとできます。
フォントの選択も、プログラムを組めばできます。
もちろん、CまたはC++でもできますが、なかなか大変です。Window...続きを読む

QBorland C++ Compiler 5.5でのコンパイル可能ディレクトリの継承?

Borland C++ Compiler 5.5.1をインストールしてサンプルソースをコンパイルしようとしたところ、「bcc32が認識されていない」エラーが出ました。


bccの設置場所はc:borland\bcc55\Binであり、Pathの設定も行い、bcc32.cfgとilink32.cfgもBinディレクトリ下に正しく作成済みです。

また、ソースの場所はc:sourceにsample1.cとして保存してあります。

なお、コマンドプロンプトでC直下での「C:\>bcc32」と入力すると正しく内容が表示され、
「C:\>bcc32 source\sample1.c」と入力すればC直下にコンパイルしたEXEファイルが生成されます。

しかし、「C:\source>bcc32」や、「C:\source>bcc32 sample1.c」では非認識エラーとなってしまいます。

windowsのOSはXP SP2のホームエディションです。


なぜ、C直下でしかbccが反映されていないのでしょうか?
対処法を教えてください、お願いします。

Borland C++ Compiler 5.5.1をインストールしてサンプルソースをコンパイルしようとしたところ、「bcc32が認識されていない」エラーが出ました。


bccの設置場所はc:borland\bcc55\Binであり、Pathの設定も行い、bcc32.cfgとilink32.cfgもBinディレクトリ下に正しく作成済みです。

また、ソースの場所はc:sourceにsample1.cとして保存してあります。

なお、コマンドプロンプトでC直下での「C:\>bcc32」と入力すると正しく内容が表示され、
「C:\>bcc32 source\sample1.c」と入力すればC直下にコンパイ...続きを読む

Aベストアンサー

PATHの設定を間違えています。
c:borland\bcc55\Bin

c:\borland\bcc55\Bin
に直してください。c:borland\bcc55\Bin だと、C ドライブのカレントディレクトリにあるborlandの下のbcc55の下のbinを探します。

QBorland C++ Compilerで画像を扱うには

基本情報技術者検定の問題でhttp://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H9a2/pm07.html
のプログラムをBorland C++ Compilerで作りたいのですが、画像が扱えないみたいなので調べてみたところ
http://www.boutell.com/gd/のライブラリがあれば
画像が扱えるとどこかで見たのですが、これって
Borland C++ Compilerにも使えるのでしょうか?

Aベストアンサー

>画像が扱えないみたいなので
別に外部ライブラリを使わなくても
普通にWindowsのGUIを扱えますよ?
http://www.kumei.ne.jp/c_lang/bcc/index.html

QC++BuilderやDelphiでVC++用のDLLの作成

C++Builderの画面から新規作成からDLLウィザードを選ぶと、VC++スタイルのDLLを選択して作成できるようになっています。VC++用のDLLを作成出来るとは書かれていません。実際、VC++コンパイラからリンクを拒否されます。

また、VC++用のインポートライブラリをCOFF形式からBorland用のOMF形式に変換するユーティリティCOFF2OMF)は存在していますが、OMF形式をCOFF形式に変換する手法を見かけません。

変換方法を書いているWEBや雑誌記事とかを紹介してください。

Aベストアンサー

C++BuilderのDLLウィザードでの「VC++スタイル」はヘルプにあるようにエントリポイントが DLLMain になるだけです。
DLLはC++Builderで作成してもVisualC++で作成しても、どちらからも利用することができます。
MFC拡張など利用する側に対応が必要なDLLは別ですが。

C++BuilderとVisualC++ではインポートライブラリに互換性がありません。
C++Builder の場合は付属のツール implib.exe でDLLからインポートライブラリを生成できますが、VisualC++では簡単な方法はありません。

VisualC++での正攻法は LIB.EXE を使ってインポートライブラリを作成することですが、DEFファイルを書いてやらないといけません。
http://bme.t.u-tokyo.ac.jp/members/manabu/MKL_BCC/mkl_BCC.html
のdllからふるいCOFF形式のlibを作成するのところ。
http://www.sun-inet.or.jp/~yaneurao/dlang/Chapter-05.html#050800000000
がもう少し分かりやすいかもしれません。

私の場合は LoadLibrary(), GetProcAddress() で動的に呼び出すか、同じ定義の関数をエクスポートするダミーのDLLを作ってインポートライブラリを得ます。

参考URL:http://www.sun-inet.or.jp/~yaneurao/dlang/Chapter-05.html#050800000000

C++BuilderのDLLウィザードでの「VC++スタイル」はヘルプにあるようにエントリポイントが DLLMain になるだけです。
DLLはC++Builderで作成してもVisualC++で作成しても、どちらからも利用することができます。
MFC拡張など利用する側に対応が必要なDLLは別ですが。

C++BuilderとVisualC++ではインポートライブラリに互換性がありません。
C++Builder の場合は付属のツール implib.exe でDLLからインポートライブラリを生成できますが、VisualC++では簡単な方法はありません。

VisualC++での正攻法は LIB...続きを読む


人気Q&Aランキング

おすすめ情報