- ベストアンサー
言語の選択
現在、Windowsで動く、エクスプローラーのようなファイルビューワーアプリケーションを作成しようと思ってます。 それで、作成する条件としては ・OSがWindowsの日本語版と英語版の両方で動くもの ・Windowsのバージョンがバラバラでも動くもの ・.NET Frameworkやランタイムが不必要なもの ・実行ファイル単体のみで動くもの ・GUI作成できるもの というのがあります。 それで、自分が知っている言語(VisualBasicやJava)ではこの 条件を満たすことが出来ませんでした。 それで、VisualBasicやJava以外で上記の条件でも問題なさそうな言語があれば教えて頂きたいと思い、投稿させて頂きました。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
★もう回答がありますね。 ・私も VC++ と Win32API(SDK) の組み合わせで作成できるとアドバイスします。 MFC を使いこなすには C++ の知識が必要です。 Java を知っているようなので飲み込みは早いかと思います。 ・次に C 言語+Win32API(SDK)でエクスプローラを作成するための解説ページを 載せておきます。 http://hp.vector.co.jp/authors/VA016117/winsdk.html→『窓プログラミング』 ↑ このサイトが今後の参考になると思います。 ・参考になるページは (1)エクスプローラーを作る その1(ファイルの表示) (2)エクスプローラーを作る その2(フォルダの表示) (3)エクスプローラーを作る その3(ソートと表示形式) (4)エクスプローラーを作る その4(右クリックメニュー) (5)スプリットウインドウを作る (6)クライアント領域をウインドウ全体に広げる (7)実行ファイルからアイコンを取り出す 上記の7つ以外にも参考になると思います。 ・また2ページ目の http://hp.vector.co.jp/authors/VA016117/winsdk2.html→『窓プログラミング2』 ↑ ここにも続きとして (8)エクスプローラーを作る その5(送るの実装) (9)OLE DragDrop(IDropTargetの実装) (10)OLE DragDrop(IDropSourceの実装) (11)OLE DragDrop(IDataObjectの実装) (12)OLE DragDrop(IEnumFORMATETCの実装) (13)OLE DragDrop(サンプル) 上記の6つが参考になると思います。 ・その他『ツリービュー』、『リストビュー』などを詳しくネット検索して 情報収集すれば実現できると思います。 あと Win32 API で Windows 95 では使えないものがあったり、DLL から関数を 呼び出さないと使えないものが存在します。詳しくは MSDN の関数マニュアルを 参考にして下さい。 ・以上。
その他の回答 (4)
- maguro999
- ベストアンサー率21% (59/273)
VC++でもMFCアプリの場合は mfc*.dllファイルが必要になります。(*の部分はVC++(MFC)のバージョン) 本当にDLL無しで作りたいならWin32APIのみ作成でしょう。
- zwi
- ベストアンサー率56% (730/1282)
VC++とWindowsAPIだけなら確実に色々なバージョンのOSで動きます。さすがにWindows95辺りまで遡ると大きな制約があるかと思いますが。Windows98でも多少の制約はあります。 VC++とMFC使用でもスタティックリンクすればDLL無しで提供可能です。 ボーランド社のC++やdelphiでも可能かとは思いますが、詳しくないので詳しい方お願いします。
お礼
zwiさん、ご返答ありがとうございます。 MFCとか、分からないので調べてみます。 でも、VC++で出来ると言うことを聞いて安心しました。
- MrBan
- ベストアンサー率53% (331/615)
その条件ならば、やはりC++が適しているかとは思います。 ・Windows3.1などWin16は除外するとして。 ・Windowsアプリを書く限り、OS添付で普通は必須なランタイム (user32.dllなど)は除外するとして。 ・実行ファイル単体で動作させるためにはサイズが肥大するのを許容するとして。 # CやD言語、Delphiなどでもできるでしょうけど。 # 後はJavaでもGCJ使ってみるとか…(こちらは細部未検証ですが)
お礼
MrBanさん、返答ありがとうございます。 D言語なんていうのもあるんですね・・・。 でも、やっぱベターなのはC++なんですね。 ありがとうございました。
- process9
- ベストアンサー率29% (81/271)
質問内容の条件ならば、 VisualC++ でしょう。
お礼
process9さん、ご返答ありがとうございます。 VisualC++は難しそうですね。 でも、頑張って勉強しようと思います。
お礼
Oh-Orangeさん、ご返答ありがとうございます。 エクスプローラーの実装方法など参考サイトまで教えて 頂きありがとうございます。 とても助かります。 このサイトを参考にして、今後の開発に役立てていきたいと 思います。