2016-07-07 10 views
0

私はWindows 98用のアプリケーションを開発することが急務であり、別のオペレーティングシステムを使用するオプションはありません。現代では、アプリケーションを開発するために使用できる最新のSDKはありますか?素晴らしいことは、Visual Studio 2015からWindows 98をターゲットにする方法があったとしても、これを行う方法がないことがわかっている限りです。Windows 98をどのようにターゲットできますか?

Visual Studio 2015を使用してWindows 98用のアプリケーションを作成してコンパイルできますか?そうでなければ、私の次のベスト・オプションは何ですか?

答えて

0

あなたはネイティブコードを書いていると仮定します.Windows 98では、XPや現代のWindows版などのWin32-APIも使用します。いくつかのものは異なっています。 VirtualAllocEx()のようなAPIがありません。これらのAPI(https://msdn.microsoft.comに各APIの最小要件セクションがある)を避けてネイティブコードを書く場合、プログラムはWindows 98でも実行する必要があります。 Visual Studioに問題がある場合は、良い古いgccとEclipse、Code :: BlocksなどのIDEを使うことができます。これを64ビットのplattform用にコンパイルしないでください。コメントセクションいくつかの更新での議論によると

:32ビットのためのPEは、(現代でコンパイルがそうでない場合は、Windows 98上で

EDITを実行しませんPE +バイナリを取得しますWindowsボックス)はWindows 98と互換性があり、ランタイムライブラリのためにVisual Studioに問題がある可能性があります。別の方法として、あなたはそれが

MSVCRT.DLLを使用していますそれにもかかわらず、まだ、Windowsのバージョンが原因に一定のAPIをサポートしているチェックするのが難しいですランタイム

  • 使用のMinGWせずにコンパイル

    • に試みることができますMSDNの更新プログラム。この時点でMSDNの古いコピーが役立つ可能性があります。

  • +0

    本当にそれほど単純ではありません。 VS2015のデフォルト設定でビルドされた実行可能ファイルは、Windows XPでは動作しません.Windows 98は気にしません。(なぜ、PE形式などのバージョンが異なるのですか?) –

    +0

    PEとPEの2つのメジャーバージョンがあります。 。後者は64ビットです。私はVisual Studioを使用しようとはしませんでしたが、MinGWでコンパイルされたPE実行可能ファイルは、サポートされているWin32 APIをWin98で実行する必要があります。自動生成されたスタブ(たとえば例外ハンドラ)についてはわかりませんが、古いバージョンのmingwがこの場合に役立つ可能性があります。私はポイントを見ない、なぜ私はここでdownvoteを取得します。 –

    +0

    Hmmm。 [このブログの投稿](https://blogs.msdn.microsoft.com/vcblog/2012/06/15/targeting-windows-xp-with-c-in-visual-studio-2012/)によると、デフォルトのVS2012設定で構築された実行ファイルは、ランタイムが新しいAPIを使用するという点でXPでは機能しません。恐らく、私は、「有効なWin32アプリケーションではありませんか?」というエラーメッセージが表示されていました。 MinGWはおそらくそれ自身のランタイムを持つのではなくmsvcrt.dllを使用するため、この問題は発生しません。 –

    関連する問題