jjzjj

StateSaver

全部标签

c# - 在 MSI 安装程序脚本中尝试/捕获

我有一个Windows安装程序提示用户输入MySQL信息(服务器、端口、用户名、密码),我想在完成设置之前确保参数正确。我有一个安装程序项目,其中自定义操作链接到安装程序类,我正在“安装”方法中进行错误检查。我的错误发生在catch()部分。非常感谢任何建议或意见。编辑:当我点击[Next]时,安装程​​序会安装应用程序,然后提示MessageBox(如果有错误)但完成安装。我希望它回滚并调出上一个屏幕。Edit2:从MySqlException捕获的异常是:“无法连接任何指定的MySQL主机”,这是正确的,但安装程序不会返回/回滚。publicoverridevoidInstall(

c++ - 是否有可能阻止 RAII 样式类被实例化 "anonymously"?

假设我有一个RAII风格的C++类:classStateSaver{public:StateSaver(inti){saveState();}~StateSaver(){restoreState();}};...在我的代码中这样使用:voidManipulate(){StateSaversave(1);//...dostuffthatmodifiesstate}...目标是进入某种状态,做一些事情,然后在我离开该范围时离开该状态。有没有办法让这个拼写错误无法编译(或警告,或以某种方式提示以便可以注意到错误)?voidManipulate(){StateSaver(1);//ruh-ro