掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.30366

EXPORT_CとIMPORT_C
投稿者---Mr.Boo(2007/06/25 17:28:56)


環境:Symbian OSとLinux
言語:C言語かC++

現在、仕事の関係で、Symbian OSとLinuxでそれぞれつくられたソースプログラムの解析をしています。
その中で、EXPORT_CとIMPORT_Cと言うキーワードが出てくるのですが、不勉強のためか、意味がわかりません。
GoogleやYahooでいろいろと検索をしてみたのですが、それぞれの意味や使い方の説明が見つかりませんでした。

どなたか、EXPORT_CとIMPORT_Cの意味と使い方を教えていただけませんでしょうか。

宜しく御願いいたします。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:EXPORT_CとIMPORT_C 30367 acid 2007/06/25 19:18:27
<子記事> Re:EXPORT_CとIMPORT_C 30368 pseudo 2007/06/25 21:03:35


No.30367

Re:EXPORT_CとIMPORT_C
投稿者---acid(2007/06/25 19:18:27)


私も不勉強なもので、調べても日本語ページでは以下の本の紹介しか見つかりませんでした。
http://72.14.235.104/search?q=cache:FroPAOsxyDcJ:www.seshop.com/detail.asp%3Fpid%3D6070%26mode%3Dspec+EXPORT_C+IMPORT_C&hl=ja&ct=clnk&cd=1

この本は持っていないので、何が書かれているかは分かりません。



この投稿にコメントする

削除パスワード

No.30368

Re:EXPORT_CとIMPORT_C
投稿者---pseudo(2007/06/25 21:03:35)


SymbianOSでは、通常、私たちアプリケーションプログラマが
生成するべきバイナリは、DLLの形をとっています。
ランチャのようなプログラムがそれぞれのDLLを読み込み
私たちが作ったプログラムが実行されるのです。

そのため、コンパイラやリンカに、今作っているDLLには
どんなAPIがあるのかを伝えてやる必要があります。
たくさんのクラスの、たくさんのメソッドのうち、
外部アプリで使ってよいのはどれとどれ?
それをヘッダ側で指定するのが IMPORT_C、
CPPファイル側で指定するのが EXPORT_C です。
# すみません、このあたりは正確ではありません。。。
# DEFファイルを作る時だけに必要だったのかな?
# リンカは関係あったっけ?

この作法は Windows のDLLを作る時も同じで、
やはり同じマクロ名 IMPORT_C、EXPORT_C がよく使われるようです。
これらは __declspec(dllimport) などの文字列に展開されますので、
この文字列で検索してみれば、いくつも解説が出てきます。
その解説は SymbianOS のそれと同じと考えて構いません。

ってか、解析をされてらっしゃるというと、要するに
あるソースコードがどう動くのかを調べている、と?
ならば、これらの事はあまり深く考える必要は無いかもしれません。
プログラムの動きを制御したりするものでは無いので。


この投稿にコメントする

削除パスワード

No.30376

Re:EXPORT_CとIMPORT_C
投稿者---pseudo(2007/06/26 00:27:53)


自己レスですみません。。。あまり重要な事ではないですが

> やはり同じマクロ名 IMPORT_C、EXPORT_C がよく使われるようです。

これは私の勘違いみたいでした。Windows 上で DLL を開発する時は
みなさん、思い思いのマクロ名を使っているようです。
# でも初めて SymbianOS に触った時、確かにこれを見て
# 「ああ、Windows と同じだねー」と思ったはずなのになあ。。。


この投稿にコメントする

削除パスワード

No.30377

Re:EXPORT_CとIMPORT_C
投稿者---Mr.Boo(2007/06/26 09:26:08)


acidさん、pseudoさん有り難うございます。
EXPORT_C、IMPORT_Cの意味がよく分かりました。

DLL等を作ったことがかなったので、結構悩んでいました。
制御系ソフトの解析だったので、それぞれの関数がどう機能しているのか、
お互いの関連なども関係するので、EXPORT_Cが何か特殊な機能を実現しているものであれば、
キチンと理解しておく必要があったため、質問させていただきました。

おかげさまで、解決いたしました。
有り難うございました。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧