程序员开发实例大全宝库

网站首页 > 编程文章 正文

Jpeg-9e源码编译(Win10,VS2022)(jpg代码)

zazugpt 2024-08-13 12:57:59 编程文章 36 ℃ 0 评论

Jpeg-9e源代码下载网址

http://www.ijg.org/


下载后得到文件


解压缩到“D:\SourceCodes\jpeg-9e”


在目录“D:\SourceCodes\jpeg-9e”中创建文本文件,并改名为“win32.mak”,其内容如附注所示。

使用命令行,进入VS2022开发者命令行窗口

cd D:\Programs\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build

D:

vcvars64.bat


在文本文件“install.txt”中搜索字符串“Microsoft Windows, Visual Studio 2022 Version 17:”,可以找到在VS2022中创建sln文件的方法。


进入目录“D:\SourceCodes\jpeg-9e”,执行命令“nmake /f makefile.vs setup-v17”,创建VS2022的解决方案“jpeg.sln”。

cd D:\SourceCodes\jpeg-9e

nmake /f makefile.vs setup-v17


在目录中,使用VS2022打开文件“jpeg.sln”。

选择Release、X64,成功生成。


为了生成debug版,需要新建debug配置(从release复制相关设置,可通过活动解决方案平台删除非x64的配置项):



代码生成运行库设置为 /MDd禁用优化

禁用优化


预处理器定义,将NDEBUG 改为DEBUG


将目标文件名由$(ProjectName)改为$(ProjectName)d


即可对Debug版进行编译了。







win32.mak的内容如下:


# Win32.Mak - Win32 application master NMAKE definitions file for the

# Microsoft Windows SDK programming samples

# Copyright (C) Microsoft Corporation

# -------------------------------------------------------------------------

# This files should be included at the top of all MAKEFILEs as follows:

# !include <Win32.Mak>

# -------------------------------------------------------------------------

#

# Define APPVER = [ 4.0 | 5.0 | 5.01 | 5.02 | 6.0 | 6.1] prior to including win32.mak to get

# build time checking for version dependencies and to mark the executable

# with version information.

#

# Define TARGETOS = [ WIN95 | WINNT | BOTH ] prior to including win32.mak

# to get some build time checking for platform dependencies.

#

# Define TARGETLANG = [ LANG_JAPANESE | LANG_CHINESE | LANG_KOREAN ] prior

# to including win32.mak to getcompile & link flags for building

# applications to run on Far-East Windows. (This is an optional parameter.

# The system locale is the default.)

#

# Define _WIN32_IE = [ 0x0300 | 0x0400 | 0x0500 | 0x0600 | 0x0700 | 0x0800] prior to including win32.mak to

# get compile and link flags for building applications and components to

# run on Internet Explorer. (This is an optional parameter. IE 4.0 is

# the default.)

#

# -------------------------------------------------------------------------

# NMAKE Options

#

# Use the table below to determine the additional options for NMAKE to

# generate various application debugging, profiling and performance tuning

# information.

#

# Application Information Type Invoke NMAKE

# ---------------------------- ------------

# For No Debugging Info nmake nodebug=1

# For Working Set Tuner Info nmake tune=1

# For Call Attributed Profiling Info nmake profile=1

#

# Note: The three options above are mutually exclusive (you may use only

# one to compile/link the application).

#

# Note: creating the environment variables NODEBUG, TUNE, and PROFILE is an

# alternate method to setting these options via the nmake command line.

#

# Note: TUNE and PROFILE do nothing for 64bit compilation

#

# Additional NMAKE Options Invoke NMAKE

# ---------------------------- ------------

# For No ANSI NULL Compliance nmake no_ansi=1

# (ANSI NULL is defined as PVOID 0)

#

# =========================================================================

# Build Rules Quick Start

#

# To build one of the following types of executables, use the specified

# compiler and linker command-line options.

#

# ---------------------------------------------------------------------------

# To build: | Compiler Options | Linker options (pick one

# | | line. con = console,

# | | gui = GUI, ole = GUI OLE)

# ---------------------------------------------------------------------------

# Single threaded | cdebug cflags cvars | ldebug guilflags guilibs

# app with static | | ldebug conlflags conlibs

# CRT | | ldebug guilflags olelibs

# ---------------------------------------------------------------------------

# Multithreaded app | cdebug cflags cvarsmt | ldebug guilflags guilibsmt

# with static CRT | | ldebug conlflags conlibsmt

# | | ldebug guilflags olelibsmt

# ---------------------------------------------------------------------------

# Single or multi- | cdebug cflags cvarsdll | ldebug guilflags guilibsdll

# threaded app with | | ldebug conlflags conlibsdll

# DLL version of CRT | | ldebug guilflags olelibsdll

# (MSVCRT.DLL) | |

# ---------------------------------------------------------------------------

# DLL with static | cdebug cflags cvarsmt | ldebug dlllflags guilibsmt

# CRT* | | ldebug dlllflags conlibsmt

# | | ldebug dlllflags olelibsmt

# ---------------------------------------------------------------------------

# DLL with DLL | cdebug cflags cvarsdll | ldebug dlllflags guilibsdll

# version of CRT | | ldebug dlllflags conlibsdll

# (MSVCRT.DLL) | | ldebug dlllflags olelibsdll

# ---------------------------------------------------------------------------

#

# * Always make DLLs multithreaded because a DLL has no way to know whether

# the calling application has multiple threads, and has no way to prevent

# multithreaded apps from loading it.

#

# To specify an Intel x86 build that defaults to stdcall, add scall to the

# list of compiler options.

#

# =========================================================================

!IFNDEF _WIN32_MAK_

_WIN32_MAK_ = 1

# -------------------------------------------------------------------------

# Get CPU Type - exit if CPU environment variable is not defined

# -------------------------------------------------------------------------

# Win95 does not define PROCESSOR_ARCHITECTURE - default to i386

!IF "$(PROCESSOR_ARCHITECTURE)" == ""

CPU=i386

PROCESSOR_ARCHITECTURE=x86

!endif

!IF !DEFINED(CPU) || "$(CPU)" == ""

CPU = $(PROCESSOR_ARCHITECTURE)

!ENDIF # CPU

# if PROCESSOR_ARCHITECTURE was x86 or X86 change CPU to i386

!IF ( "$(CPU)" == "X86" ) || ( "$(CPU)" == "x86" )

CPU = i386

!ENDIF # CPU == X86

!IF "$(CPU)" != "i386"

!IF "$(CPU)" != "IA64"

!IF "$(CPU)" != "AMD64"

!ERROR Must specify CPU environment variable ( CPU=i386, CPU=IA64, CPU=AMD64)

!ENDIF

!ENDIF

!ENDIF

# -------------------------------------------------------------------------

# Get Target Operating System - Default to WINNT

# -------------------------------------------------------------------------

!IFNDEF TARGETOS

TARGETOS = WINNT

!ENDIF

!IF "$(TARGETOS)" != "WINNT"

!IF "$(TARGETOS)" != "WIN95"

!IF "$(TARGETOS)" != "BOTH"

!ERROR Must specify TARGETOS environment variable (BOTH, WIN95, WINNT)

!ENDIF

!ENDIF

!ENDIF

# default to APPVER of 5.0

!IFNDEF APPVER

APPVER = 5.0

!ENDIF

!IF "$(APPVER)" != "6.1"

!IF "$(APPVER)" != "6.0"

!IF "$(APPVER)" != "5.02"

!IF "$(APPVER)" != "5.01"

!IF "$(APPVER)" != "5.0"

!IF "$(APPVER)" != "4.0"

!ERROR Must specify APPVER environment variable (4.0, 5.0, 5.01, 5.02, 6.0, 6.1)

!ENDIF

!ENDIF

!ENDIF

!ENDIF

!ENDIF

!ENDIF

!IF "$(APPVER)" =="6.1"

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0800

!ENDIF # _WIN32_IE

!ENDIF # APPVER == 6.1

!IF "$(APPVER)" =="6.0"

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0700

!ENDIF # _WIN32_IE

!ENDIF # APPVER == 6.0

!IF "$(APPVER)" =="5.0"

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0500

!ENDIF # _WIN32_IE

!ENDIF # APPVER == 5.0

!IF "$(APPVER)" =="5.01"

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0600

!ENDIF # _WIN32_IE

!ENDIF # APPVER == 5.01

!IF "$(APPVER)" =="5.02"

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0600

!ENDIF # _WIN32_IE

!ENDIF # APPVER == 5.02

!IFNDEF _WIN32_IE

_WIN32_IE = 0x0400

!ENDIF

# -------------------------------------------------------------------------

# Build tool declarations common to all platforms

# Check to see if Cole Porter is used, otherwise use C/C++ compiler

# -------------------------------------------------------------------------

cc = cl

link = link

implib = lib

midl = midl

rc = Rc

hc = Start /Wait Hcrtf

mc = Mc

hcvars = -xn

# -------------------------------------------------------------------------

# Platform Dependent Compile Flags - must be specified after $(cc)

#

# Note: Debug switches are on by default for current release

#

# These switches set code generation and debugging options for the compiler.

# They also set macros used for conditional compilation.

#

# The debugging switches allow for source level debugging with WinDebug or

# Microsoft Visual C++.

#

# Common compiler flags:

# -c - compile without linking

# -W3 - Set warning level to level 3 (-W4 for 64-bit compilations)

# -Zi - generate debugging information

# -Od - disable all optimizations

# -Ox - use maximum optimizations

# -Zd - generate only public symbols and line numbers for debugging

# -GS - enable security checks

#

# i386 specific compiler flags:

# -Gz - stdcall (only if scall is added to makefile's compiler build rules)

#

# -------------------------------------------------------------------------

# declarations common to all compiler options

ccommon = -c -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -GS

# for compatibility with old source code, map {try, except, leave, finally}

# to their proper names (i.e. prefaced by "__")

!IFDEF SEHMAP

ccommon = $(ccommon) -FIsehmap.h

!ENDIF

!IF "$(TARGETLANG)" == "LANG_JAPANESE"

ccommon = $(ccommon) -DJAPAN -DDBCS -DFE_IME

!ENDIF

!IF "$(TARGETLANG)" == "LANG_CHINESE"

ccommon = $(ccommon) -DDBCS -DFE_IME

!ENDIF

!IF "$(TARGETLANG)" == "LANG_KOREAN"

ccommon = $(ccommon) -DDBCS -DFE_IME

!ENDIF

!IF "$(CPU)" == "i386"

cflags = $(ccommon) -D_X86_=1 -DWIN32 -D_WIN32 -W3

scall = -Gz

!ELSEIF "$(CPU)" == "IA64"

cflags = $(ccommon) -D_IA64_=1 -DWIN64 -D_WIN64 -DWIN32 -D_WIN32

cflags = $(cflags) -W4

scall =

!ELSEIF "$(CPU)" == "AMD64"

cflags = $(ccommon) -D_AMD64_=1 -DWIN64 -D_WIN64 -DWIN32 -D_WIN32

cflags = $(cflags) -W4

scall =

!ENDIF

!IF "$(APPVER)" == "4.0"

NMAKE_WINVER = 0x0400

!ELSEIF "$(APPVER)" == "5.0"

NMAKE_WINVER = 0x0500

!ELSEIF "$(APPVER)" == "5.01"

NMAKE_WINVER = 0x0501

!ELSEIF "$(APPVER)" == "5.02"

NMAKE_WINVER = 0x0502

!ELSEIF "$(APPVER)" == "6.0"

NMAKE_WINVER = 0x0600

!ELSEIF "$(APPVER)" == "6.1"

NMAKE_WINVER = 0x0601

!ENDIF

!IF "$(TARGETOS)" == "WINNT"

cflags = $(cflags) -D_WINNT -D_WIN32_WINNT=$(NMAKE_WINVER) -DNTDDI_VERSION=$(NMAKE_WINVER)0000

!ENDIF

!IF "$(TARGETOS)" == "WIN95"

cflags = $(cflags) -D_WIN95 -D_WIN32_WINDOWS=$(NMAKE_WINVER) /D_WIN32_DCOM

!ENDIF

# regardless of the TARGET OS, define compile time WINVER to match APPVER macro

cflags = $(cflags) -D_WIN32_IE=$(_WIN32_IE) -DWINVER=$(NMAKE_WINVER)

# Set debugging options

!IF "$(CPU)" != "IA64"

!IFDEF NODEBUG

cdebug = -Ox -DNDEBUG

!ELSE IFDEF PROFILE

cdebug = -Gh -Ox -DNDEBUG

!ELSE IFDEF TUNE

cdebug = -Gh -Ox -DNDEBUG

!ELSE

cdebug = -Zi -Od -DDEBUG

!ENDIF

!ELSE

!IFDEF NODEBUG

cdebug = -Ox -DNDEBUG

!ELSE

cdebug = -Zi -Od -DDEBUG

!ENDIF

!ENDIF

# -------------------------------------------------------------------------

# Target Module & Subsystem Dependent Compile Defined Variables - must be

# specified after $(cc)

#

# The following table indicates the various acceptable combinations of

# the C Run-Time libraries LIBC, LIBCMT, and MSVCRT respect to the creation

# of a EXE and/or DLL target object. The appropriate compiler flag macros

# that should be used for each combination are also listed.

#

# Executable Type C Runtime Lib Compiler switch

# -------------------------------------------------------------

# Single threaded app static CRT CVARS *

# Single-threaded app DLL CRT CVARSDLL

# Multi-threaded app static CRT CVARSMT *

# Multi-threaded app DLL CRT CVARSDLL *

#

# Single threaded DLL static CRT CVARS

# Single-threaded DLL DLL CRT CVARSDLL

# Multi-threaded DLL static CRT CVARSMT *

# Multi-threaded DLL DLL CRT CVARSDLL *

#

# * - Denotes the Recommended Configuration

#

# When building single-threaded applications you can link your executable

# with either LIBC, LIBCMT, or MSVCRT, although LIBC will provide the best

# performance.

#

# When building multi-threaded applications, either LIBCMT or MSVCRT can

# be used as the C-Runtime library, as both are multi-thread safe.

#

# Note: Any executable which accesses a DLL linked with MSVCRT.LIB must

# also link with MSVCRT.LIB instead of LIBC.LIB or LIBCMT.LIB.

# When using DLLs, it is recommended that all of the modules be

# linked with MSVCRT.LIB.

#

# Note: The macros of the form xDLL are used when linking the object with

# the DLL version of the C Run-Time (that is, MSVCRT.LIB). They are

# not used when the target object is itself a DLL.

#

# -------------------------------------------------------------------------

!IFDEF NO_ANSI

noansi = -DNULL=0

!ENDIF

# for Windows applications that use the C Run-Time libraries

!IFDEF NODEBUG

cvarsmt = $(noansi) -D_MT -MT

cvars = $(cvarsmt)

cvarsdll = $(noansi) -D_MT -D_DLL -MD

!ELSE

cvarsmt = $(noansi) -D_MT -MTd

cvars = $(cvarsmt)

cvarsdll = $(noansi) -D_MT -D_DLL -MDd

!ENDIF

# for compatibility with older-style makefiles

cvarsmtdll = $(cvarsdll)

# for POSIX applications

psxvars = -D_POSIX_

# resource compiler

rcflags = /r

!ifdef NODEBUG

rcvars = -DWIN32 -D_WIN32 -DWINVER=$(NMAKE_WINVER) $(noansi)

!else

rcvars = -DWIN32 -D_WIN32 -DWINVER=$(NMAKE_WINVER) -DDEBUG -D_DEBUG $(noansi)

!endif

!IF "$(TARGETLANG)" == "LANG_JAPANESE"

rcflags = $(rcflags) /c932

rcvars = $(rcvars) -DJAPAN -DDBCS -DFE_IME

!ENDIF

!IF "$(TARGETLANG)" == "LANG_CHINESE"

rcvars = $(rcvars) -DDBCS -DFE_IME

!ENDIF

!IF "$(TARGETLANG)" == "LANG_KOREAN"

rcvars = $(rcvars) -DDBCS -DFE_IME

!ENDIF

# -------------------------------------------------------------------------

# Platform Dependent MIDL Flags - must be specified after midl

#

#

# -------------------------------------------------------------------------

!IF "$(TARGETOS)" == "WIN95"

MIDL_OPTIMIZATION=-target NT40

!ELSEIF "$(TARGETOS)" == "WINNT"

!IF "$(APPVER)" == "5.0"

MIDL_OPTIMIZATION=-target NT50

!ELSEIF "$(APPVER)" == "6.0"

MIDL_OPTIMIZATION=-target NT60

!ELSEIF "$(APPVER)" == "6.1"

MIDL_OPTIMIZATION=-target NT61

!ELSEIF "$(APPVER)" == "5.01"

MIDL_OPTIMIZATION=-target NT51

!ELSEIF "$(APPVER)" == "5.02"

MIDL_OPTIMIZATION=-target NT51

!ELSEIF "$(APPVER)" == "4.0"

MIDL_OPTIMIZATION=-target NT40

!ENDIF

!ENDIF

!IF "$(CPU)" == "IA64"

MIDL_OPTIMIZATION = $(MIDL_OPTIMIZATION) /ia64

!ELSEIF "$(CPU)" == "AMD64"

MIDL_OPTIMIZATION = $(MIDL_OPTIMIZATION) /x64

!ELSE

MIDL_OPTIMIZATION = $(MIDL_OPTIMIZATION) /win32

!ENDIF

!IF ("$(TARGETOS)" == "WINNT" ) && ("$(APPVER)" != "4.0")

MIDL_OPTIMIZATION = $(MIDL_OPTIMIZATION) /robust

!ENDIF

# -------------------------------------------------------------------------

# Platform Dependent Link Flags - must be specified after $(link)

#

# Note: $(DLLENTRY) should be appended to each -entry: flag on the link

# line.

#

# Note: When creating a DLL that uses C Run-Time functions it is

# recommended to include the entry point function of the name DllMain

# in the DLL's source code. Also, the MAKEFILE should include the

# -entry:_DllMainCRTStartup$(DLLENTRY) option for the creation of

# this DLL. (The C Run-Time entry point _DllMainCRTStartup in turn

# calls the DLL defined DllMain entry point.)

#

# -------------------------------------------------------------------------

# declarations common to all linker options

lflags = $(lflags) /INCREMENTAL:NO /NOLOGO

# declarations for use on Intel x86 systems

!IF "$(CPU)" == "i386"

DLLENTRY = @12

!ENDIF

# declarations for use on Intel Architecture 64-bit systems

!IF "$(CPU)" == "IA64"

DLLENTRY =

!ENDIF

# declarations for use on AMD64 systems

!IF "$(CPU)" == "AMD64"

DLLENTRY =

!ENDIF

# -------------------------------------------------------------------------

# Target Module Dependent Link Debug Flags - must be specified after $(link)

#

# These switches allow the inclusion of the necessary symbolic information

# for source level debugging with WinDebug, profiling and/or performance

# tuning.

#

# Note: Debug switches are on by default.

# -------------------------------------------------------------------------

!IF "$(CPU)" == "i386"

!IFDEF NODEBUG

ldebug = /RELEASE

!ELSE

ldebug = /DEBUG /DEBUGTYPE:cv

!ENDIF

!ELSE

!IFDEF NODEBUG

ldebug = /RELEASE

!ELSE IFDEF PROFILE

ldebug = /DEBUG:mapped,partial /DEBUGTYPE:coff

!ELSE IFDEF TUNE

ldebug = /DEBUG:mapped,partial /DEBUGTYPE:coff

!ELSE

ldebug = /DEBUG /DEBUGTYPE:cv

!ENDIF

!ENDIF

# for compatibility with older-style makefiles

linkdebug = $(ldebug)

# -------------------------------------------------------------------------

# Subsystem Dependent Link Flags - must be specified after $(link)

#

# These switches allow for source level debugging with WinDebug for local

# and global variables. They also provide the standard application type and

# entry point declarations.

#

# Note that on x86 screensavers have a WinMain entrypoint, but on RISC

# platforms it is main. This is a Win95 compatibility issue.

#

# -------------------------------------------------------------------------

# Windows 98 needs subsystem version set to 4.10 for version 5.0 features.

!IF ("$(APPVER)" == "5.0") && (("$(TARGETOS)" == "BOTH") || ("$(TARGETOS)" == "WIN95"))

EXEVER = 4.10

!ELSE

EXEVER = $(APPVER)

!ENDIF

# ---------------------------------------------

# for Windows applications

conlflags = $(lflags) -subsystem:console,$(EXEVER)

guilflags = $(lflags) -subsystem:windows,$(EXEVER)

dlllflags = $(lflags) -entry:_DllMainCRTStartup$(DLLENTRY) -dll

# For screen savers

!IF "$(CPU)" == "i386"

savlflags = $(lflags) -subsystem:windows,$(EXEVER) -entry:WinMainCRTStartup

!ELSE

savlflags = $(lflags) -subsystem:windows,$(EXEVER) -entry:mainCRTStartup

!ENDIF

# for POSIX applications

psxlflags = $(lflags) -subsystem:posix -entry:__PosixProcessStartup

# for compatibility with older-style makefiles

conflags = $(conlflags)

guiflags = $(guilflags)

psxflags = $(psxlflags)

# -------------------------------------------------------------------------

# C Run-Time Target Module Dependent Link Libraries

#

# Note: For POSIX applications, link with $(psxlibs).

# -------------------------------------------------------------------------

# for POSIX applications

psxlibs = libcpsx.lib psxdll.lib psxrtl.lib oldnames.lib

# optional profiling and tuning libraries

!IF "$(CPU)" != "IA64"

!IFDEF PROFILE

optlibs = cap.lib

!ELSE IFDEF TUNE

optlibs = wst.lib

!ELSE

optlibs =

!ENDIF

!ELSE

optlibs =

!ENDIF

# if building for basic Windows 95, use WinSock1, else use WinSock2

!IF "$(TARGETOS)" == "WIN95"

!IF "$(APPVER)" == "4.0"

winsocklibs = wsock32.lib

!ELSE

winsocklibs = ws2_32.lib mswsock.lib

!ENDIF

!ELSE

winsocklibs = ws2_32.lib mswsock.lib

!ENDIF

# basic subsystem specific libraries, less the C Run-Time

baselibs = kernel32.lib $(optlibs) $(winsocklibs) advapi32.lib

winlibs = $(baselibs) user32.lib gdi32.lib comdlg32.lib winspool.lib

# for Windows applications that use the C Run-Time libraries

conlibs = $(baselibs)

guilibs = $(winlibs)

# for OLE applications

olelibs = ole32.lib uuid.lib oleaut32.lib $(guilibs)

#for backwards compatibility

conlibsmt = $(conlibs)

conlibsdll = $(conlibs)

guilibsmt = $(guilibs)

guilibsdll = $(guilibs)

olelibsmt = $(olelibs)

olelibsdll = $(olelibs)

# for backward compatibility

ole2libs = $(olelibs)

ole2libsmt = $(olelibsmt)

ole2libsdll = $(olelibsdll)

# Visual Basic

bc = vb6

bc_exe = /Make

bc_dll = /Makedll

# Set the Output Directory

!IF ("$(APPVER)" == "6.1")

OUTDIR=WIN7

!ELSEIF ("$(APPVER)" == "6.0")

OUTDIR=Vista

!ELSEIF "$(APPVER)" == "5.0"

OUTDIR=WIN2000

!ELSEIF "$(APPVER)" == "5.01"

OUTDIR=XP32

!ELSEIF "$(APPVER)" == "5.02"

OUTDIR=SRV2003

!ELSEIF "$(APPVER)" == "4.0"

OUTDIR=NT4

!ENDIF

!IF "$(CPU)" == "AMD64"

OUTDIR=$(OUTDIR)_X64

!ELSEIF "$(CPU)" == "IA64"

OUTDIR=$(OUTDIR)_64

!ENDIF

#set Prerelease Out directories

!IF "$(SDKPRERELEASE)" == "1"

OUTDIR=PRE_$(OUTDIR)

!ENDIF

#Set DEBUG

!IF "$(NODEBUG)" == ""

OUTDIR=$(OUTDIR)_DEBUG

!ELSE

OUTDIR=$(OUTDIR)_RETAIL

!ENDIF

!IF "$(OS)" == "Windows_NT"

CLEANUP=if exist $(OUTDIR)/$(NULL) rd /s /q $(OUTDIR)

!ELSE

CLEANUP=deltree /y $(OUTDIR)

!ENDIF

VC6MSG=This sample only compiles with Microsoft Visual C++ 6.0. \

To compile this run vcvars32.bat for Visual C++ 6.0, and setenv.bat in $(MSSDK).

WIN64MSG=This sample is currently not supported on the 64 bit platform.

#ENDIF _WIN32_MAK_

!ENDIF

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表