• 締切済み

Windows Vistaでコンソールアプリを作れるか?

現在、WindowsXP, Borland C++Builder6付属のBCC32.EXE で作ったコンソールアプリをフリーソフトとして公開しています(結構人気があります)。 Windows Vistaでも引き続きコンソールアプリを作れるでしょうか? 具体的には FreeConsole() AllocConsole() CONSOLE_SCREEN_BUFFER_INFO などが Win32 API でサポートされるか? ということです。 (Windows が新しくなるたびに、コンソールアプリが未サポートになるんじゃないかとヒヤヒヤします。)

みんなの回答

  • 7colors
  • ベストアンサー率25% (29/114)
回答No.1

直接の回答ではありませんが、今後Win32APIはサポートされなくなるという情報は、一部ソフトウェア会社には降りてきているようです。 (うちにはありませんが・・・) ですので、Vistaがそうであるとは言えませんが近々でなくなると考えた方がいいと思われます。 (多分ですが、既にWin2003 64bitではサポート外ではないかと思っています)

gba02077
質問者

お礼

情報、ありがとうございます。

関連するQ&A

  • Winコンソール上でMsysのconfigure

    現在Windows上でConsole2+nyaosにて操作を行っています。 c++ソースのパッケージを利用したく./configureを使用するためMinGWとMsysをインストールしました。 私はインストールすればConsole2上で./configureを実行できると思っていたのですが、Msys付属のコンソール上でしかできないようです。 コマンドプロンプト上でも実行できませんでした。 一応MinGWとMsysのbinディレクトリにPathは通してあります。 どうにかしてWindowsのコンソール(Msys付属のではない)上で./configureを実行させることはできないでしょうか。 関係あるかは分かりませんが、MinGWの他にBorlandもインストールしてあります。 よろしくお願いします。

  • コンソールアプリの起動パラメータ について

    ・環境   XP, Borland C++ Compiler 5.5 ・使用言語   C++ コンソールアプリを作成しています。 コンパイルして出来上がったEXEのアイコンに、何かファイルを ドラッグ&ドロップすると、そのファイルがパラメータとなって EXEが起動されると思うのですが、ここで疑問があります。 (1)最大パラメータ数というのはどこかに規定されているのでしょうか。 (2)複数のファイルをドラッグ&ドロップした時に、EXEに渡される順番というのはどのように決定されるのでしょうか。 よろしくお願い致します。

  • visual studio 2005 VB のコンソールアプリに関して

    やりたいこと: exeファイルを作成する。 そのexeファイルをダブルクリックすると、 コンソールが表示され、1,2,3,4,・・・・と表示を続ける。 キーボードの"q"が入力されると表示が停止する。 下記のソースコードで、コンソールが表示、1,2,3,4,・・・と表示、まではできたようです。 //////////////////// Module Module1 Sub Main() Dim number As Integer number = 1 Do Console.WriteLine(number) number = number + 1 Loop End Sub End Module //////////////////// できたというのは、VisualStudio上でF5キーを押してうまくいった、 ということです。 あとは、  ・キーボードの"q"の入力受付&停止処理  ・exeファイルを作成する ですが、コンソールアプリの情報がなかなかWEBから手に入りません。 有識者の方、ご教授いただけませんでしょうか。 プログラミング経験は、 PHPを半年ほどやっているだけです。 よろしくお願いします。 以上

  • BCCのコンソールアプリからウィンドウ表示

    BCCのコンソールアプリからウィンドウを表示したいのですが、うまくいきません。 なにが悪いのでしょうか・・・ どなたかお教えいただけると助かります。 よろしくお願いいたします。 コンパイラ: Borland C++ 5.5.1 bcc32 コンパイル方法: bcc32 -WC WindowTest.cpp (コンソールアプリにしているのは、標準入力を受け標準出力に出すフィルタ機能も持たせようと思っているからです。) *** ソース (WindowTest.cpp) *** #include <windows.h> LRESULT CALLBACK WndProc ( HWND hWnd, UINT msg, WPARAM wp, LPARAM lp ){ // とりあえず空 (void)hWnd; (void)msg; (void)wp; (void)lp; return 0; } int main (int argc, char**argv){ HINSTANCE hInstance = (HINSTANCE)GetModuleHandle(NULL); WNDCLASSEX wc; char className[] = "hoge"; memset( &wc, 0, sizeof( wc )); wc.cbSize = sizeof(WNDCLASSEX); wc.style = 0; wc.lpfnWndProc = WndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInstance; wc.hIcon = LoadIcon( NULL, IDI_APPLICATION ); wc.hCursor = LoadCursor( NULL, IDC_ARROW ); wc.hbrBackground = (HBRUSH)GetStockObject( WHITE_BRUSH ); wc.lpszMenuName = NULL; wc.lpszClassName = className; wc.hIconSm = NULL; if(! RegisterClassEx( &wc )) return 1; HWND hWnd = CreateWindow(className, "Title", WS_OVERLAPPEDWINDOW | WS_VISIBLE, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, HWND_DESKTOP, NULL, hInstance, NULL); // ← ここで失敗し、ウィンドウが表示されない if (!hWnd) return 2; ShowWindow(hWnd, NULL); UpdateWindow(hWnd); MSG msg; while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } (void)argc; (void)argv; return 0; }

  • VBでコンソールアプリの出力を取得したいのですが

    ネット上で入手したコマンドプロンプト上で使うアプリをGUIで操作できるようにしたく出力を取得したいのですが出来ません。 ネットで出力の取得方法を調べて下記のようにしているのですがどうやっても取得できません・・・ (ipconfig や dir 等は問題なく取得できたのですが・・・) VBは2008です Dim p As New Process() p.StartInfo.FileName = "cmd.exe" ' 実行するファイル p.StartInfo.Arguments = "aaa.exe" ' 目的のアプリ p.StartInfo.CreateNoWindow = True ' コンソールを開かない p.StartInfo.UseShellExecute = False ' シェル機能を使用しない p.StartInfo.RedirectStandardOutput = True ' 標準出力をリダイレクト p.Start() ' アプリの実行開始 Dim output As String = p.StandardOutput.ReadToEnd() ' 標準出力の読み取り output = output.Replace(vbCr + vbCrLf, vbLf) ' 改行コードの修正 TextBox1.Text = output ' [出力]ウィンドウに出力 試しに自分で文字を表示するだけのコンソールアプリを作成して試したのですがそれは取得できました。 目的のアプリが特殊なのでしょうか? ソースがあったので見てみたのですがC言語だった為詳しくわからなかったのですが、出力は「Console.WriteLine」ではなく「fputs」を使用して出力していました・・・これが原因なのでしょうか? どうにかして、出力を取得する方法はないものでしょうか? よろしくお願いします。

  • C言語のコンパイルの設定で詰まっています。

    エディタ:Notepad++ notepad++のNppExecというプラグインを使い、いろいろなサイトとファイルを参考に以下のコマンドを記述しました。 NPP_SAVE CD $(CURRENT_DIRECTORY) C:\borland\bcc55\Bin\bcc32.exe -I -L "$(FILE_NAME)" Console画面には、 Current directory: C:\[フォルダ名] Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland [ファイル名].c: Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland ================ READY ================ と表示されました。 私には何をやっている文章なのかよくわからないのですが、 .cのファイルはちゃんと保存され、.exe .tds .obj のファイルができているので、コンパイルは成功していると思います。 そこで、 コンパイルしたhogehoge.exeなどをnotepad++上で実行させるためには、どのようなコマンドを記述すればいいのでしょうか? コマンドプロンプトをにbcc32などと記述してコンパイルするのは、面倒に感じるのでどうしてもNotepad上でexeを実行させたいのです。 他のテキストエディタを使う、というのは考えていません。 当方、プログラミング自体、C言語でやっとfor文を覚えたばかりの初心者なので、できるだけわかりやすい言葉で解答をいただけると幸いです。お願いします。

  • 雑誌付録ソフトの使用方法教えてください。

    Cを勉強しようと「C MAGAZIN」という雑誌を購入し、付属のCD に入っていたBorland C++ Compiler 5.5.1 というのを使おうと思って インストールしました。 中の「readme.txt」には、以下のようになっています。 -------------------------------------------------------------------------- コマンドラインツールのインストールと実行 1. freecommandlinetools.exe を実行します。無料の C++Builder 5 コマンドラインツール開発システムをインストールしたいドライブと フォルダを選択します。 2. インストール先の bin ディレクトリで次の手順を実行します。 a. 既存のパスに "c:\Borland\Bcc55\bin" を追加します。 b. bcc32.cfg ファイルを作成します。このファイルは,Include および Lib パスのコンパイラオプション(コンパイラの -I および -L スイッチ)を設定するものです。ファイルには次の 行を含めてください。 -I"c:\Borland\Bcc55\include" -L"c:\Borland\Bcc55\lib" c. ilink32.cfg ファイルを作成します。このファイルは,Lib パスのリンカオプションを設定するものです。ファイルには 次の行を含めてください。 -L"c:\Borland\Bcc55\lib" -------------------------------------------------------------------------- 1.まではできたと思います。 2.の意味がわかりません。特にa. 既存のパスとかって何ですか? ちなみにインストール先は "c:\Borland\Bcc55" で、その中にbinというフォルダはあります。 また、bcc32.cfgといファイルはどのように作成したらいいのですか?そして それはどこに入れればいいのでしょうか? 素人で申し訳ありませんがよろしくお願いします。 ちなみに僕の使ってるのは普通のwindowsのパソコンです。

  • 無知な私に教えて下さい。

    Borland C++の設定なのですが・・・ 1. freecommandlinetools.exe を実行します。無料の C++Builder 5 コマンドラインツール開発システムをインストールしたいドライブとフォルダを選択します。 2. インストール先の bin ディレクトリで次の手順を実行します。 a. 既存のパスに "c:\Borland\Bcc55\bin" を追加します。 b. bcc32.cfg ファイルを作成します。このファイルは,Include および Lib パスのコンパイラオプション(コンパイラの -I および -L スイッチ)を設定するものです。ファイルには次の 行を含めてください。 -I"c:\Borland\Bcc55\include" -L"c:\Borland\Bcc55\lib" c. ilink32.cfg ファイルを作成します。このファイルは,Libパスのリンカオプションを設定するものです。ファイルには次の行を含めてください。 -L"c:\Borland\Bcc55\lib" と、あるのですが意味が全くわからないんです・・・ この意味、もしくは設定の仕方をおしえてください。 m(_ _)m宜しくお願い致します。

  • C++Builderで実行ファイルが作成されない

     C++Builder6で本に載っているHelloWorldサンプルをビルドしたところ、真っ白なタブが出るだけで何も出力されません。Bin下のbcc32でコマンドラインからコンパイルしてみると、objファイルとtdsファイルが出来ていますが、exeファイルは作成されていませんでした。  どうやれば簡単なコンソールアプリケーションをビルドできるのでしょうか?

  • Borlandの無償配布のCコンパイラの初期設定

    ダウンロードしてきたやつを実行させて無事にディレクトリはできたのですが、以下の手順2のところのパスに追加しろ、というのがどういうことなのか分かりません。何をやればいいのか教えて下さい。 今までLinuxの既存のgccという温室で作業していたので、いざWindows上でCを動かしたいときに何をやればいいのかわかりません。助けてください ============================================================= 1. freecommandlinetools.exe を実行します。無料の C++Builder 5 コマンドラインツール開発システムをインストールしたいドライブと フォルダを選択します。 2. インストール先の bin ディレクトリで次の手順を実行します。 a. 既存のパスに "c:\Borland\Bcc55\bin" を追加します。 b. bcc32.cfg ファイルを作成します。このファイルは,Include および Lib パスのコンパイラオプション(コンパイラの -I および -L スイッチ)を設定するものです。ファイルには次の 行を含めてください。 -I"c:\Borland\Bcc55\include" -L"c:\Borland\Bcc55\lib" c. ilink32.cfg ファイルを作成します。このファイルは,Lib パスのリンカオプションを設定するものです。ファイルには 次の行を含めてください。 -L"c:\Borland\Bcc55\lib"