• 締切済み

SDKを使ったプログラミングについて

現在Visual C++ 2005を使ってアプリケーションを作成しようとしています。 すでにWin32APIアプリケーションがあり、それにSDKを使って機能追加をしようとしています。 しかしそのSDKがMFCで書かれているためにどのように機能を呼び出すのかわかりません。 (SDK付属の説明書を読んでも全然わかりませんでした) SDKのヘッダーファイルのインクルードはできるのですがその先機能の呼び出しができません。 すごく抽象的なのですがSDKを使ったプログラミングについてわかりやすく解説しているWEBサイトなどはありませんか? また、MFCをWin32に移植する、などといった方法を解説しているところでも構いません。 ちなみにプログラミングスキルは初心者というよりは素人です。 よろしくお願いします。

  • cdx
  • お礼率33% (1/3)

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

ExpressEditionには MFCは付属していないので使えませんよ # 開発環境の情報はエディションまで書きましょう MFCは Standerd以上のエディションに添付になります MFCはWindowsのCreateWindowなどで取得したハンドルを CWndクラス等にラップ(内包)しています 画面描画などに使う デバイスコンテキストhDCが CDCクラス ペン、ブラシ、ビットマップなどが CPen,CBrush,CBitmap といった対応になります Windowsの各種イベントは メッセージマップといった仕組みを使って処理を振り分けます これは WindowProcの中で uMsgを判断して処理を振り分けるのと同じ機能です Cxxクラスのメンバー関数は多くの場合Win32APIに似たような名前(関数名やメッセージ名)があり 引数のハンドルが省略された物が多いでしょう 何を参考になさっているのWeb上に情報があり、公開しても支障なければURLなどを投稿してみましょう 下記リンクの『猫でもわかるプログラミング』のページの『Windows SDK編』のリンクなどがPlatformSDK用の内容になります

参考URL:
http://www.kumei.ne.jp/c_lang/
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

SDKの使い方は個々のSDKによって違うので、「SDKを使ったプログラミング」を一般論として解説するのは不可能です。 そのSDKの名称とやりたいことを書けば知っている人から情報がもらえるかもしれません。 そうでなければ、そのSDKのドキュメントを読む、サンプルコードを試すなどして理解するしかないでしょう。

関連するQ&A

  • Visual C++2005でMFC形式(?)のDLLを含んだSDKの利用について

    環境:Win2000 SP4 VS2005 pro SP1 現在大学で実験をするためのプログラムを作成しようとしています。 前任者が作った実験用プログラム(Win32API)があり、それに今年購入したハードウェアのSDKを導入することでプログラムの拡張を図っています。 (具体的には今までの測定に追加して動画解析を行おうとしてるのですが・・・) そこでそのSDKの説明書通りにインクルードフォルダを設定し、libファイルを設定しました。 それからソースに説明書通りにヘッダーをインクルードしました。 (このヘッダーファイルをインクルードすることによりSDKに含まれる3つのDLLがすべて読み込まれるらしいです) そこでとりあえずインクルードだけしてコンパイルしてみたところ SDKに含まれるヘッダーファイル中にCStringの構文エラーが出ました error C2061: 構文エラー : 識別子 'CString' 説明書によるとSDKに含まれるDLLのうち1つはwin32DLLで残り2つはMFC標準DLLというもののようです。 プロジェクトのプロパティから文字コードをマルチ、Unicodeとやってみましたがダメでした。 またMFCの利用設定もすべて試してみましたがダメでした。 今までVSをさわったことがなくC言語も少しかじったことがあるだけなので困り果てています。 回答よろしくお願いします。

  • SDKやMFCでの開発について

    私はサンデープログラマなので趣味でSDKなどで簡単なプログラミングをしています。MFCにも挑戦しようかと思っているところなのですが、いかんせんVisualと名前がついているのにSDKもMFCもぜんぜんVisualではありませんので開発にかなり時間がかかってしまいます。ダイアログベースでのプログラミングがあるかとは思いますが、コントロールのインターフェースの制御などに制限があるように思えます。 ●やはりソフトハウスなどでは画面(ウィンドウ)を作るとき、 コントロールの位置など直接確認できないので、 その専門の人(画面を作る人たち)がいて、 コントロールの位置を設定して(CreateWidnow関数などのTop,Left引数の位置に座標を設定して) いちいちその度にビルドをし、コントロールの位置を確認して画面を制作しているのでしょうか? ●また、私はC#に興味があります。それはなぜかというと、SDKや特にMFCに比べて、やはりVBのように画面を作りやすくするため、VBのようなデザイン画面を取り入れたり、XMLなどを操作できるようにしたり、MFCのようにオブジェクト指向でWindowsの性能を最大限に引き出すことができる(まとまった一連の動作はオブジェクトで実行し、単機能の動作は直接APIにアクセスし実行することができる)VBとMFCとJAVAのいいところをすべて網羅した言語のように思えます。この認識は正しいのでしょうか?

  • VC++でwin32APIを作っているのですが・・・

    こんにちは。私はwin32APIを勉強しているc言語初心者です。 私はMicrosoft Visual C++ 2008を使ってc言語のwin32APIをプログラミングしているのですが、独学でやっているので物凄く邪道なwin32APIプログラミングをしているような気がするのです。 ・c言語のプログラムを書いて、C++のwin32APIプロジェクトとしてビルドする。 ・ヘッダーファイルにwin32API関数がなかったので、自分のwindowOSからwin32API関数を探し出してVC++2008のなかのincludeフォルダ内にコピー&ペーストして使えるようにした。 これって邪道ですか?一応何の問題もなくwin32APIプログラムが作れるのですが、もっと正規なやり方があるでしょうか。回答よろしくお願いします。

  • コンソールアプリケーションからWindowsプログラムへの道順

    私は現在Visual C++ .NET 2003のスタンダードを使用して、Win32コンソールアプリケーションでプログラムを作成しています。まだまだ経験が浅いのでエラーの連続ですが、ポインタの使用や構造体の使用、クラスの使用や低水準ファイル入出力を利用して、テキストファイルの読み込み・整形・書き込みをするプログラムを作成しています。 そろそろSDKやMFCなどを学びたいと考えているのですが、書籍などでSDKを覚えてからMFCを学んだほうが良いみたいなことが書かれていました。でも、別の書籍ではいきなりMFCでも問題ないみたいなことも書いてありました。現在コンソールアプリケーションを作る私がSDKやMFCを学ぶために道順が良く分からなくなっています。 そこで現在Windowsプログラミングをされている方にお聞きしたいことがあります。質問は次のとおりです。 1、MFCを学ぶなら先にSDKを覚えてからのほうが良いですか? 2、Visual C++ .NET 2003を使用してSDKまたはMFCを学ぶのに、お勧めの書籍があったら教えてください。 3、絶版になっていない書籍を探すとVisual C++ .NET 2005を使用しているものが目立つように思えるのですが、私の所有しているバージョンを2005にしてから書籍を考えたほうが良いと思いますか? お時間がありましたら皆さんのご経験をお聞かせください。よろしくお願いいたします。

  • SDKにおける印刷プレビュー実装(VisualStudio.NET2003)

    タイトル通りWin32APIをC++でゴリゴリ書いています。 恐れていた要求仕様がついに来てしまったのですが、現状のSDK状態で印刷プレビューを実装可能でしょうか? # 印刷その物は既に出来ています。 MFCならウィザードで何やらにチェックすれば印刷プレビューが使える様になる様ですが、現状のプログラムをMFCベースに書き換えるのも結構至難です。 Q1.色々探してみたのですがSDKに組み込めるクラスライブラリやDLLが見つかりません。有償でも構わないのでご存知でしたらご紹介下さい。 Q2. 現状のSDKベースにMFCの印刷プレビュー機能のみを呼出す(実装する)様な事は可能なのでしょうか? Q3.一般的にはどの様に実現しているのでしょうか? やはりMFCベースで最初から開発したり、自分でゴリゴリ作ったりするのでしょうか? 印刷プレビューを自分で作るのって…かなり困難かと… 以上、宜しくお願い致します。

  • SDK関する質問です。

    初心者で誠に申し訳御座いません。 コンパイルエラーが取れて -------------------構成 : CnstDst - Win32 (WCE x86) Debug-------------------- CnstDst.exe - エラー 0、警告 0 ファイルをダウンロードしています ダウンロードに失敗しました。 ダイアログにStandard SDK for Windows CE .NETを対象として x86CPU用にビルドされたアプリケーションをエミュレーターデバイス上で実行することはできません。このアプリケーションをエミュレータ 以外のCPUで実行する為には,Standard SDK for Windowd CE .NT と互換性のあるSDKをインストールしてから、そのSDKに関連ある シャドウプラットフォームをターゲットにする必要があります。 と出ます。 意味がいまいち分かりません。 環境はパソコン WIN XP  Microsoft eMbedded Visual C++ 最終的にはWIN CE上で動かしたいのですが デバッグはXPで行いたいです。 どなた様かお教え下さる様お願い致します。 先ほどコンパイルエラーじアドバイスいて頂いた方 にポイントがうまく差し上げられませんでした。 初心者なのでお許しください。

  • 「プログラミング」の「本質」?

    こんにちは。 僕は今C言語を独学してる大学生ですがプログラミングに関してわからないことがあります。 まず、プログラミングの入門書には主にその言語の文法の解説だけしか載ってませんよね。 しかし実用的なソフトウェアを作るには文法以外にも大事な概念とか機能がありますよね?(実装とか組み込みとかライブラリとかフレームワークとかAPIとか.NETとかexeとか) 入門書はその部分を曖昧にしてると思うんですよね。 例えば「APIはOSとアプリケーションを繋ぐ窓口」とかいう感じで。 僕は「API」がどういう仕組みでどういう役割を持ち具体的にどう使えばいいのかを知りたいわけなんですよ。 この詳しい解説はいったいどんな本に載ってるんでしょうか? 次にソフトウェアって、僕の考え方が正しいかわかりませんが、他の色んな部分に繋がっていますよね。 例えばブラウザは「ネットワーク」に、OSは「ハードウェア」に。 その「連結部分」がいったいどういう仕組みで何が支配してるんでしょうか? もちろんネットワークもハードウェアも仕組みが違うことはわかりますが、「Hello,World!」と表示する道具をどう弄れば「連結部分」となり得るのでしょうか? 以上の二つが僕が疑問に思ったことです。 文才が無くてすみません。 僕自身何がわからないのかわからないので。 つまり、作りたいモノがあっても「プログラミング」という一つのカテゴリーが大きすぎてどうやればいいかわからないということです。 ちなみに僕は人工生命のシミュレーションソフトを作ってみたいんですが、Linuxとかを弄ってみたいなと思っています。 誰かこの疑問に答えてくれませんか。 こいつのせいでプログラミングをやる意味が見出せずプログラミングに対して恐怖すら覚えるようになってきました。 助けてください。 お願いします。

  • 最近のWindowsプログラミング環境について

    久しぶりにWindowsで趣味プログラミングをしようと考えています。 以前はDelphi、C++BuilderのRADプログラミング環境を使ってお手軽にやっていたのですが手持ちのバージョンも古いのと、今後(というか、すでに)MS系開発環境が主流だしなぁと、今回はVisual Studio(Visual C++)を使ってみようと思っています。 APIのみでゴリゴリと書いたこともあるので、またそれでいくか!とも考えましたが、さすがに今更APIだけでやるのは面倒くさいと、何かフレームワークを、MFCかATL/WTLあたりになるのかなぁと。 ちょっとしたツール程度のものを作るのにちょうどいいようなフレームワークで、おすすめがありましたら、ご紹介ください。(ちょっと漠然とした質問になってしまいましたが) #GTKやQTなどもどうなんでしょうね?

  • Visual Studio 2010 初歩的な質問

    Visual Studio 2010 の使い方を学習していますが、 基本的なことがよく分からないので教えてください。 1) Webサイトなどで  「Windows API の詳細については、プラットフォーム SDK の   Windows APIで、Win32 SDK に関する記述を参照してください」   というような説明をよく見かけるのですが、   ( http://msdn.microsoft.com/ja-jp/library/172wfck9(v=vs.100).aspx )   Win32 SDK に関する記述はどこにあるのでしょうか。 2) Webサイトなどで  「Windows API で使用される定数の詳細については、   プラットフォーム SDK に組み込まれている Windows.h などの   ヘッダー ファイルを参照してください。」   というような説明をよく見かけるのですが、   ( http://msdn.microsoft.com/ja-jp/library/172wfck9(v=vs.100).aspx )   C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include   フォルダの中にWindows.hファイルはありましたが、   Windows.hファイルの中身を見ても、   定数の説明などは見当たりませんが   どこに定数の詳細が書かれているのでしょうか。 初歩的な質問ですがよろしくお願いします。

  • ゲームプログラミングのネットワーク対戦

    毎回、お世話になっています。 開発環境:Visual Studio 2005 Visual C++ 開発言語:C/C++ + Win32API + DirectX9 現在、上記の環境・言語でゲームプログラムを作成中です。 そのゲームに、ネットワーク対戦を導入したいと思っています。 そこで質問なのですが、どのように実装すればよいでしょうか? 質問が非常に抽象的で申し訳ないのですが、まずは、DirectPlayやWinSockなどのライブラリの中で、何を使えばいいのか、をアドバイスしていただければと思います。 また、出来ましたら簡単に仕組みを解説していただければ幸いです。 その後、具体的な導入方法について自身で調べてみることにします。 通信の特徴として、 ・1vs1の通信対戦 ・一回のデータ量は少ないが、ほぼリアルタイムに送信 という感じです。 ネットワークプログラミングにはあまり触れたことがないこともあり未熟な身ですが、ご存知の方がいましたらご教授よろしくお願いします。

専門家に質問してみよう