Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
#1

Что делать с warning : CA2122 : Microsoft.Security ? - C++

06.02.2014, 16:50. Просмотров 248. Ответов 1
Метки нет (Все метки)

Добрый день уважаемые форумчане!
Закончил свой проект и решил протестировать его анализатором кода MVS2012 (в процессе компилирования) на предмет warning... (Просто компилятор их не выдает). Удалось устранить почти все (большей частью не внимателен был) кроме:

Кликните здесь для просмотра всего текста
MSBUILD : warning : CA2122 : Microsoft.Security : 'COpenGL:: Dispose(bool)' выполняет вызов в 'COpenGL::~COpenGL(void)', для которого задана проверка LinkDemand. Выполняя этот вызов, 'COpenGL::~COpenGL(void)' косвенно предоставляется пользовательскому коду. Рассмотрите следующий стек вызова, который может раскрыть способ обхода защиты безопасности:
1>MSBUILD : warning : ->'COpenGL:: Dispose(bool)'
1>MSBUILD : warning : ->'COpenGL:: Dispose(bool)'
1>MSBUILD : warning : ->'COpenGL:: Dispose(void)'
MSBUILD : warning : CA2122 : Microsoft.Security : 'COpenGL:: Dispose(bool)' выполняет вызов в 'NativeWindow::Finalize(void)', для которого задана проверка LinkDemand. Выполняя этот вызов, 'NativeWindow::Finalize(void)' косвенно предоставляется пользовательскому коду. Рассмотрите следующий стек вызова, который может раскрыть способ обхода защиты безопасности:
1>MSBUILD : warning : ->'COpenGL:: Dispose(bool)'
1>MSBUILD : warning : ->'COpenGL:: Dispose(bool)'
1>MSBUILD : warning : ->'COpenGL:: Dispose(void)'


код конструктора и деструктора вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
namespace OpenGLForm 
{
    [ComVisible(false)]
    public ref  class COpenGL sealed: public System::Windows::Forms::NativeWindow
    {
    public:
                GridP *gr;
        INT32 ig,jg,kg;
        double rm, xc1,yc1,zc1; 
        double ax,ay;
        bool        isGrid  ;                                       
                bool        isCoord ;       
        bool        isBody ;
                bool        isClicked  ;                                        
                bool        isRClicked ;        
                bool        isMClicked ;    
                bool        isDragging;     
                bool        isFon;      
                bool  isEnabled;
                double sfac;
 
 
    [EnvironmentPermissionAttribute(SecurityAction::LinkDemand, Unrestricted=false)]
        COpenGL(IntPtr parentForm, GLsizei iWidth, GLsizei iHeight)
        {
            
            CreateParams^ cp = gcnew CreateParams;
            sfac=1;
            cp->X = 0;
            cp->Y = 0;
        xc1=0;
        yc1=0;
        isEnabled=false;
            cp->Height = iHeight;
            cp->Width = iWidth;
        isClicked  = false;                                     
            isRClicked = false;                                     
            isDragging = false;     
        isGrid=true;                                        
            isCoord=true;       
        isBody=true ;   
        isFon=true ;    
            cp->Parent = parentForm;
            cp->Style = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN |WS_TABSTOP|WS_BORDER ;
        this->CreateHandle(cp);
        }
[EnvironmentPermissionAttribute(SecurityAction::LinkDemand, Unrestricted=false)]
 ~COpenGL(System::Void)
        {
        
            glDeleteLists(base, 96);
            this->DestroyHandle();
       }
Как это обойти? Или не замарачиваться?
Заранее благодарю за Вашу критику и советы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2014, 16:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что делать с warning : CA2122 : Microsoft.Security ? (C++):

Незнаю что делать с Microsoft Visual Studio 2010. Исключение .Net Framework - C++
Кидаю через буфер обмена код ранее работающий и вот такие дела: 1>------ Построение начато: проект: proba, Конфигурация: Debug Win32...

подскажите что делать при вводимых данных 10 25 и 5 20 программа работает не правильно должна выводить 135 подскажите что делать - C++
Вывод В выходной файл выведите одно число - сколько ударов сделали часы за этот отрезок времени.

Что означает этот warning? - C++
warning: extended initializer lists only available with -std=c++0x or -std=gnu++0x Появляется когда я меняю это: pvertex.x =...

Что такое __pragma(warning()) ? - C++
Вот код макроса: #define PTM_WARNING_DISABLE \ __pragma(warning( push )) \ __pragma(warning( disable : 4867 )) Что эти функции...

сообщение что исходный файл не откомпилирован что делать? - C++
Собственно скачал я dev c++ пишу простую программу #include <iostream> int main() { std::cout << "Hello world!"; ...

Что мне делать или что надо знать перед тем как начать изучение яз.программирования С/С++? - C++
Я пока вообще не умею программировать.Сначала хотел с бейсика или паскаля.Но многие советуют начинать сразу с С/С++.

1
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
06.02.2014, 20:28  [ТС] #2
Да еще один вопрос: этим кто-нибудь вообще пользуется? Все ли рекомендации исполняемы???
0
Миниатюры
Что делать с warning : CA2122 : Microsoft.Security ?  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.02.2014, 20:28
Привет! Вот еще темы с ответами:

Кто-нибудь может подробно объяснить, что такое allocators, зачем это и что с ними делать? Нигде не нашёл инфы - C++
Заранее спасибо.

Что делать?(учу C++ и кое что ни понимаю может стоит начать с более "низких языков" например basic) - C++
Всем привет народ вот я учу C++ и кое что ни понимаю может стоит начать с более "низких языков" например basic?

Ребят Незнаю что делать при запуске на компилирование выдает ошибку.Кто понимает что не так скажите а если не затруднит исправьте ошибку - C++
Разговаривал с двумя преподами говорят что проект не правильно создавал,хотя все правильно из группы спрашивал у парней говорят что не...

Warning C4101 и warning C4996 - C++
Здравствуйте, пишу программу "Домашняя видеотека", в которой необходимо реализовать запить информации про фильм и поиск по жанру, и что бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru