如何用c++编写自定义卸载程序代码,用于在Visual Studio 2008中删除用户生成的文件
How to write a custom uninstaller code in C++ for deleting user generated files in Visual Studio 2008
我在网上读了很多关于在Visual Studio中编写自定义操作的文章和博客,但是我完全不清楚如何做到这一点。我的设置项目是在c++。谁能一步一步地指导如何在c++中编写自定义卸载程序?
我的安装项目创建了以下文件结构:
设置->输入-> file.txt
->程序-> PrimaryOutput(主动)
->输出
在成功运行安装程序时,将在输出文件夹中创建文件,该文件在安装安装程序期间保留在该文件夹中。如何在c++中编写一个自定义卸载程序,以便在卸载后完全删除所有文件。
编辑:我已经能够创建这样的自定义动作模板:#include "stdafx.h"
extern "C" UINT _stdcall Install(MSIHANDLE hInstall)
{
return ERROR_SUCCESS;
}
extern "C" UINT _stdcall Commit(MSIHANDLE hInstall)
{
return ERROR_SUCCESS;
}
extern "C" UINT _stdcall Rollback(MSIHANDLE hInstall)
{
return ERROR_SUCCESS;
}
extern "C" UINT _stdcall Uninstall(MSIHANDLE hInstall)
{
return ERROR_SUCCESS;
}
如何在卸载方法中继续编写删除Output文件夹的代码
是这样的:http://www.codeproject.com/Articles/570751/DevMSI-An-Example-Cplusplus-MSI-Wix-Deferred-Custo
和VS自定义动作被延迟,所以它会为你工作。
或:http://www.codeproject.com/Articles/1747/MSI-Custom-Action-DLL
无论如何这就是你开始的地方。
如果你使用任何其他安装工具,它会给你访问MSI的RemoveFile功能,所以不需要任何类型的自定义操作。
相关文章:
- 如何使用Visual Studio 2008将字符串映射到函数?
- Visual Studio 2008 WriteFile
- Microsoft Visual Studio 2008,版本9.0.30739.1 SP,DLL构建错误
- 如何防止Visual Studio 2008 C编译器在发生某些错误时停止?
- upper_bound带有binary_function Visual Studio 2008错误
- 找不到 Visual Studio 2008 的生成工具(平台工具集 = 'v90')
- stdlib.h's random() on MS Visual Studio 2008
- Visual Studio 2008版本内部版本未装饰DLL导出
- Xerces Link error with Visual Studio 2008
- 如何将字符串值从C++返回到javascript(windows/Visual studio 2008)
- Visual Studio 2008 64 位部署项目不会按预期部署 64 位 VC90 合并模块
- Visual Studio 2008 C++ 不会编译标头类中的更改
- 在Visual Studio 2008中使用WinCE7平台构建器为WinCE7创建Visual C++中的Winfor
- 我如何确保修改.H文件时,使用Visual Studio 2008将包括其在内的.cc文件自动编译
- 如何在Windows中为Visual Studio 2008的现有项目编写Makefile
- 将 Visual Studio 2008 配置为在程序/库中使用 log4cxx
- 从Visual Studio 2008升级到Visual Studio 2013时,二进制大小增长了30%
- Visual Studio 2012:编译器设置(可以使用SDK中的编译器,例如.VC++2008-编译器 VC++ 2
- 二进制不是使用 Visual Studio 2008 中的调试信息构建的
- 如何在Visual Studio 2008(C++项目中运行项目后生成规则而不进行重建