Visual Studio 的Build Event 使用

rmdir Configuration
mkdir Configuration

Copy "$(ProjectDir)Configuration\Spec.config" "$(TargetDir)Configuration\Spec.config" /y



http://stackoverflow.com/questions/150053/how-to-run-visual-studio-post-build-events-for-debug-build-only



http://stackoverflow.com/questions/768282/how-to-delete-files-in-visual-studio-pre-build-event-command-line


UpdateObjectClient:

Copy "$(TargetDir)norlib.basic.dll"  "$(ProjectDir)Resources\"  /y
Copy "$(TargetDir)UpdateObjectClientApi.dll" "$(ProjectDir)Resources\"  /y
Copy "$(TargetDir)UpdateSoftwareProtocolLibrary.dll" "$(ProjectDir)Resources\"  /y



NDAPClient:


Copy "$(ProjectDir)3rdComponents\*.*"  "$(TargetDir)" /y
Copy  "$(TargetDir)UpdateObjectClient.exe" "$(TargetDir)\..\" /y
Del "$(TargetDir)UpdateObjectClient.exe"
if $(ConfigurationName) == Release  goto :release
goto :exit
:release
del "$(TargetDir)*.pdb"
%CreateSoftConfigFileCommand%    Download.XML    NDAPClient    R_1_3_308_2717     E:\Projects\NDAP\NDAPClient\Output\Release.x86     L:      Client/NDAPClientWPF.exe




:exit

转载于:https://www.cnblogs.com/norsd/p/6359383.html

### 配置 wxWidgets 开发环境 在 Visual Studio 中配置 wxWidgets 的开发环境是一个相对复杂的过程,但通过遵循详细的指南可以顺利完成。以下是关于如何在 Visual Studio 中设置 wxWidgets 开发环境的具体说明。 #### 准备工作 为了成功完成配置,需要下载并解压 wxWidgets 源码包到指定目录。例如,假设源码路径为 `D:\Test\wxWidgets-3.1.6`[^3]。此外,还需要安装 Microsoft Visual Studio 2019 或更高版本作为编译工具链的一部分。 #### 打开解决方案文件 使用 Visual Studio 打开位于 `D:\Test\wxWidgets-3.1.6\build\msw\wx_vc17.sln` 的解决方案文件。此操作会加载多个项目,其中包括用于构建库的不同配置选项。 #### 构建静态或动态库 选择要构建的库类型(静态链接或动态链接)。对于调试模式和发布模式分别进行如下设置: - **Debug 版本**: 设置活动配置为 `DEBUG` 并启动构建过程。 - **Release 版本**: 更改至 `RELEASE` 配置再执行一次完整的重建命令。 这一步可以通过菜单栏中的“Build -> Batch Build...”来实现批量处理所有目标平台下的不同组合情况。 #### 添加头文件与库路径 进入项目的属性页,在 C/C++ 和 Linker 节点下添加相应的 include 文件夹位置以及 lib 库所在的位置信息: ```cpp // 示例代码展示如何包含必要的头文件 #include <wx/wx.h> ``` 确保这些路径指向实际存在的 wxWidgets 安装目录内的子文件夹结构,比如 `include`, `lib/vc_xxx/lib` 等。 #### 测试简单应用程序 创建一个新的控制台或者窗口程序模板工程,并尝试运行下面这段基础示例验证集成是否正常运作: ```cpp class MyApp : public wxApp { public: virtual bool OnInit(); }; class MyFrame : public wxFrame { public: MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size); private: void OnQuit(wxCommandEvent&); DECLARE_EVENT_TABLE() }; IMPLEMENT_APP(MyApp) bool MyApp::OnInit() { MyFrame *frame = new MyFrame(_T("Hello World"), wxDefaultPosition, wxSize(450, 340)); frame->Show(true); SetTopWindow(frame); return true; } BEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(wxID_EXIT, MyFrame::OnQuit) END_EVENT_TABLE() MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size): wxFrame(NULL, wxID_ANY, title, pos, size){ CreateStatusBar(); } void MyFrame::OnQuit(wxCommandEvent&) { Close(true); } ``` 上述例子定义了一个基本的应用类继承自标准框架接口,同时实现了退出事件处理器逻辑。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值