vs2013怎么添加自定义资源?谢谢,,,,

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vs2013怎么添加自定义资源?谢谢,,,,相关的知识,希望对你有一定的参考价值。

参考技术A 您好,这样的:
BOOL COscillDlg::AssoilInlaidResource(CString sDllName, UINT nResourceID, CString sOutputFileName, CString sExtendName)

ASSERT(!sOutputFileName.IsEmpty());
ASSERT(!sExtendName.IsEmpty());

LPTSTR Name = MAKEINTRESOURCE(nResourceID);// IDR_SWF资源名称。

HINSTANCE hImage = NULL;
// 界面库句柄
// 载入界面库
if (!sDllName.IsEmpty())

hImage = LoadLibrary(sDllName);
if (hImage < (HINSTANCE)HINSTANCE_ERROR)

AfxMessageBox(sDllName);
return FALSE;


HRSRC res = FindResource(hImage, Name, sExtendName);// "swf" 资源类型。

if (res == NULL)

AfxMessageBox(SwitchGetErr(GetLastError()));
return FALSE;

HGLOBAL gl = LoadResource(hImage, res);

if (gl == NULL) return FALSE;

LPVOID lp = LockResource(gl);//返回指向资源内存的地址的指针。

if (sOutputFileName.Find('.') == -1)// 没有找到扩展名

::MessageBox(NULL, TEXT("扩展名不对"), TEXT("error"), MB_OK);
return FALSE;

DeleteFile(sOutputFileName);
// CREATE_ALWAYS为不管文件存不存在都产生新文件。
// ***CreateFile() 默认使用当前.exe文件路径创建文件。
// 创建的是一个隐藏属性的文件 FILE_ATTRIBUTE_HIDDEN

HANDLE fp = CreateFile(sOutputFileName, GENERIC_WRITE, 0, NULL,
CREATE_ALWAYS, FILE_ATTRIBUTE_HIDDEN, NULL);
DWORD a;
//sizeofResource 得到资源文件的大小
if (!WriteFile(fp, lp, SizeofResource(hImage, res), &a, NULL))
return FALSE;

CloseHandle(fp);//关闭句柄
FreeResource(gl);//释放内存
if (!sDllName.IsEmpty())

FreeLibrary(hImage);

return TRUE;


if (AssoilInlaidResource(_T("ShockwaveFlashControl.dll"), IDR_SWF1, _T("C:\\Temswf.swf"), _T("SWF")))

AfxMessageBox(_T("SUS"));

else

AfxMessageBox(_T("文件不存在"));


CString COscillDlg::SwitchGetErr(DWORD n)

CString errStr;
switch (n)

case 1813:
errStr= _T("资源类型不对");
break;

default:
break;

return errStr;
追问

我是想学Windows编程,现在在看Windows编程第五版,你写的这个看不懂啊,很惭愧

我是想学Windows编程,现在在看Windows编程第五版,你写的这个看不懂啊,很惭愧

VS2010-自定义控件

1.自定义控件

  (1)新建—项目,项目模板选择“类库”,取名smControl,填写项目文件保存目录,点击确定

  (2)完成后在解决方案资源管理器中删除类Class1

  (3)添加“用户控件”——在解决方案资源管理器中选中项目smControl,右键添加新建项,新建项类型选择用户控件,取名smUserControl,点击确定 ;

  (4)自定义控件的样式和风格——往用户自定义控件里添加根据我们需要定制的用户界面和功能

2.生成dll文件

  “生成”—“批生成”

3.添加

  (1)在工具箱中右键一个控件或一个选项卡,选择“选择项(I)…”

  (2)在“.NET Framework组件”下点击“浏览”,找到你写的控件的bin\Debug文件夹,选中你定义的控件的dll文件,点击确定

以上是关于vs2013怎么添加自定义资源?谢谢,,,,的主要内容,如果未能解决你的问题,请参考以下文章

VS2010-自定义控件

vs中怎么样使用自定义控件

winform 自定义控件

MFC 在自定义工具栏上添加有下拉菜单的按钮。

VS2013 新建自定义向导 出错

vs2008时间控件设置默认值