win32-vc程序搬运vs2012出现问题

问题描述

vc程序搬运vs2012出现问题
void playSound(int s_sort)
{
char ss_sort[20]={0};
::sprintf_s(ss_sort./music/clear%d.wav""s_sort);
PlaySound(ss_sortNULLSND_ASYNC);
}
error C2664: “PlaySoundW”: 不能将参数 1 从“char [20]”转换为“LPCWSTR”
应该怎么转换呢

解决方案

v

 oid playSound(int s_sort){char ss_sort[20]={0};::sprintf_s(ss_sort./music/clear%d.wav""s_sort);PlaySoundA(ss_sortNULLSND_ASYNC); }

API默认是unicode字符集。用ANSI版本API

解决方案二:
首先在工程的属性中看看工程是设置 Unicode ,还是 ANSI。如果是后者,且还有次错误,则在 ss_sort 前加强制转换就可以了。如果是前者, ss_sort 最好定义成 TCHAR 类型,使用 wsprintf 来生成字符串。

解决方案三:
在项目属性中,把工程的字符集选择成多字符集也可以

时间: 2024-08-01 11:58:22

win32-vc程序搬运vs2012出现问题的相关文章

VC++的win32小程序内存泄漏,求高手解答

问题描述 VC++的win32小程序内存泄漏,求高手解答 做的一个简单的交通模拟小程序,用三个定时器分别产生 汽车处理消息,红绿灯更换消息和汽车随机产生消息.但是最后程序内存越跑越大.求高手解答.http://download.csdn.net/detail/hdwbdbsm/6724747这个是程序的下载地址,求高手.

VC程序在Win32环境下动态链接库(DLL)编程原理_C 语言

本文详细讲述了VC程序在Win32环境下动态链接库(DLL)编程原理.分享给大家供大家参考.具体分析如下: 一般比较大的应用程序都由很多模块组成,这些模块分别完成相对独立的功能,它们彼此协作来完成整个软件系统的工作.其中可能存在一些模块的功能较为通用,在构造其它软件系统时仍会被使用.在构造软件系统时,如果将所有模块的源代码都静态编译到整个应用程序EXE文件中,会产生一些问题:一个缺点是增加了应用程序的大小,它会占用更多的磁盘空间,程序运行时也会消耗较大的内存空间,造成系统资源的浪费:另一个缺点是

文件的输入和输出-win32应用程序问题关于文件

问题描述 win32应用程序问题关于文件 // ConsoleApplication3.cpp : 定义控制台应用程序的入口点.//#include ""stdafx.h""#include#include#includeint N1N2kk1kk2kk3;struct couse * head1;struct student * head2;struct couse//课程信息结构体{ int num1; char name1[20]; int score; in

vs2013 server2003-不是有效的win32应用程序

问题描述 不是有效的win32应用程序 本人在vs2013下编译的程序,将exe在server 2003上运行提示不是有效的win32应用程序,请问是什么原因??在debug和release配置中都是现实的win32,在win7的64和32上都能跑 解决方案 首先,没有安装.net framework的电脑是不能直接运行.net程序的,除非你在安装程序中打包了.net framework安装包. 其次,所谓向下兼容,也不一定能保证使用更高版本的.net framework所编写的.net程序就能

一个win32汇编语言程序示例

首先我们看一个"复杂"的Win32汇编程序程序用来显示一个消息框--------------------------------------------------;文件名:3.asm .386.model flat ,stdcall NULL equ 0MB_OK equ 0 ExitProcess PROTO :DWORDMessageBoxA PROTO :DWORD,:DWORD,:DWORD,:DWORD includelib kernel32.libincludelib u

win7电脑提示文件不是有效的win32应用程序怎么办?

win7电脑提示文件不是有效的win32应用程序怎么办?   win7系统 第一种情况:因为兼容问题导致.解决方法如下: 咱们找到无法打开的文件,然后右键点击,在下滑菜单中选择属性,在弹出来的窗口中,咱们将界面切换到兼容性这一栏,然后勾选上以兼容模式运行,点击确定退出窗口. win7系统 第二种情况:因为文件关联错误导致.解决方法如下: 1.首先,有可能是病毒在作祟,因此,咱们运行电脑中的杀毒软件进行全盘杀毒,确保电脑中没有病毒的隐患. 2.因为这里需要涉及到修复注册表的操作,小编建议大家可以下

Win7安装软件提示“不是有效的win32应用程序”怎么办?

  Win7系统安装软件提示"不是有效的win32应用程序"的解决方法. 一.如果是因为安装源文件不完整或是程序安装不成功,我们可以重新从官方网站来下载安装文件重新安装一下此程序,有时候你所选择的下载工具也是导致这种情况的发生的主要原因,必要时可以试用不同的工具进行下载. 二.如果是由于病毒导致的错误,可以重启电脑按F8键进入安全模式,启动杀毒软件来全盘彻底查杀一下病毒,查杀病毒完毕后,我们需要重新建立文件关联,步骤如下: 1.按"Win+R"组合快捷键,打开&qu

不是有效Win32应用程序的解决方法

有用户在双击安装某个软件时,经常会弹出"XXX.EXE不是有效Win32应用程序"的错误提示.当然,有时即使我们双击运行任意一个EXE格式的可执行文件,同样会出现这样的错误提示.那么如何才能够避免系统出现不是有效Win32应用程序问题呢. 如果仅仅是在安装某些软件时,才弹出错误信息,这说明我们安装的程序包不完整或者是程序安装不成功,此时可从该程序官方网站下载未被修改的"原 装"程序安装包,并双击之,就可以顺利完成该程序的安装操作.不过,如果是在双击运行任意一个EXE

Win7打开软件提示“不是有效的Win32应用程序”如何解决

  情况一:当我们双击某些软件的安装文件来安装或是打开此软件时,可能会收到提示"***.exe不是有效地Win32应用程序"的提示. 情况二:在安装或打开所有的软件,都有遇到"不是有效地Win32应用程序"的提示. 解决方法: 第一种情况:往往是由于安装源文件不完整或是程序安装不成功,我们可以重新从官方网站来下载安装文件重新安装一下此程序.有时候你所选择的下载工具也是导致这种情况的发生的主要原因,必要时可以试用不同的工具进行下载. 第二种情况:我们安装多个软件都收到