Образец SecureCRT: преобразование нерекомендуемых функций CRT в их аналоги с суффиксом _s
В этом образце демонстрируется преобразование функций CRT, которые по соображениям безопасности больше не рекомендуются к использованию, в их аналоги с суффиксом _s. Преобразование затрагивает следующие функции: strcpy, strncpy, fopen, _splitpath, sprintf, getenv, strcat, _creat и itoa. Здесь же демонстрируется использование функции _set_invalid_parameter_handler — еще одного элемента SecureCRT.
В данном образце реализован алгоритм сопоставления строк Бойера-Мура, использующий стандартные функции CRT.
![]() |
---|
Этот пример кода иллюстрирует концепцию и содержит только код, относящийся к этой концепции. Он может не отвечать требованиям безопасности для конкретных условий, и его не следует использовать в точности в том виде, в каком он приведен. Чтобы проект был безопасным и надежным, рекомендуется добавить код обеспечения безопасности и код обработки ошибок. Корпорация Майкрософт предоставляет этот пример кода на условиях "КАК ЕСТЬ", без каких-либо гарантий. |
Чтобы получить образцы и инструкции по их установке, выполните следующие действия.
Доступ к примерам из Visual Studio
В меню Справка выберите пункт Примеры.
По умолчанию эти примеры устанавливаются в папку диск:\Program Files\Microsoft Visual Studio 10.0\Samples\.
- Самая последняя версия этого примера и полный список примеров представлены на странице Visual Studio Samples на веб-сайте MSDN.
Построение и запуск этого образца
Откройте файл решения SecureCRT.sln в среде разработки Visual Studio.
В меню Построение выберите команду Построить решение.
В меню Проекты выберите пункт Свойства.
В разделе Свойства конфигурации выберите Отладка.
В текстовом поле Аргументы команды задайте аргументы, которые должны передаваться в программу (например, "if find.cpp").
В меню Отладка выберите команду Запуск без отладки. Приложение будет искать в каждой строке файла (в данном случае find.cpp) текст, указанный в поле аргументов ("if"), и запишет все найденные вхождения в файл рабочего каталога (в данном случае find.cpp.match).
Это приложение можно также запустить из командной строки: SecureCRT.exe if find.cpp
Ключевые слова
strcpy_s, strncpy_s, fopen_s, _splitpath_s, sprintf_s, getenv_s, strcat_s, itoa_s, _set_invalid_parameter_handler
См. также
Ссылки
strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l
sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l
_itoa_s, _i64toa_s, _ui64toa_s, _itow_s, _i64tow_s, _ui64tow_s
_set_invalid_parameter_handler