プロが教えるわが家の防犯対策術!

win98にて、VC++5.0のサンプルを実行しようとすると以下のエラーメッセージが出るのですが、このサンプルは実行できないのでしょうか?

This application or DLL can not be loaded on Windows 95 or on Windows3.1.It takes advantage of Unicode feateres only available on Windows NT.

A 回答 (4件)

NT系のWindowsでしか動作しないコードですね。


WindowsNTか2000かXPを使わないとむりだと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2003/07/24 21:42

こんにちは。



 使っている関数を片っ端からMSDNで引き、下の方にある対応情報で、Win.98がサポートされているか確かめてください。

LPCWSTRが使われているならLPCSTRに置き換えてください。

その他、MSDNの型について調べ、Unicode指定されているものをすべて無指定にします。
LPCWSTR→LPCSTR など

プログラムの先頭に #define __NT__ などの、UNICODEやWindowsNTを前提とするような記述がないか調べ、あれば削除、またはWIN32を使用するように修正します。


これくらいの修正が必要だと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2003/07/24 21:46

Unicodeを使っている文字列処理がはいっているのだと思います。


その処理を別の関数などにおきかえれば使えると思います。具体的にどの処理をというのはわかりませんが、以前にNTのプログラムを組んでいて、95に対応しなければならないとき、そのような経験をしました。
参考までに。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2003/07/24 21:45

「Windows95やWindows3.1では実行できません。


WindowsNTでのみ利用可能なUnicodeを利用しています」
と書いてますね。
Windowsには三つの系統があって、
一つはWindows3.1、これはだいぶ古く、使ってる人はほとんどいないでしょう。
もう一つはWindows95、98、MEの系統。
もう一つはWindowsNT,XPの系統。

つまり、問題のサンプルは、
三番目のNT~XPの系統でしか動かないやつだと思います。
その理由はUnicodeにあるようです。
NT~XPの系統はUnicodeが扱えますが、他のは対応していません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2003/07/24 21:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!