在vs2010中用c++/cli做一个短信系统的解析程序,需要访问到app.config中的一个appsetting段的值。
一开始根据vs的提示如下:
System::Configuration::Configuration^ config = ConfigurationManager::OpenExeConfiguration(ConfigurationUserLevel::None); AppSettingsSection^ app = config->AppSettings; String^ strResult=app->Settings->AllKeys[strName]->Value;
总是出fatal error c1001的错误,几经周折,改代码如下:
System::Configuration::Configuration^ config = ConfigurationManager::OpenExeConfiguration(ConfigurationUserLevel::None); AppSettingsSection^ app = config->AppSettings; String^ strResult=app->Settings[strName]->Value;
编译通过。
一般出现此类错误时,一种是因为访问对象错误,即上述错误(代码提示时,没有value,需要自己根据net类库去测试。一种就是网上所流传的语法写的过于复杂。
总而言之,c++语言虽然有各种简短的语法格式,但为了阅读与编译起见,还是一步一步老老实实的写出来吧。