информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Все любят медАтака на InternetПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Тот memset.asm, в который я "ввалился" в дебаге похоже... 02.08.07 05:52  Число просмотров: 3356
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
> > Вроде не должна использовать CRT, но в Debug
> неожиданно
> > "заходит" (F11 Step Into) в memset.asm.
> > Компилятор, VC++8.0.
> > Это норма?
>
> Если хочешь включить в дебаге intrinsic-и, зайди в
> Configuration
> Properties->C++->Optimization->Enable Intrinsic
> Functions
>
> Либо сделай
> #pragma intrinsic(memset)

Тот memset.asm, в который я "ввалился" в дебаге похоже одноименная фунция WinAPI c функцией memset C RTL. Интересно, где эта фунция (Win API версия) находится? kernel32? Я не нашёл у MS информации, как линкуется RtlZeroMemory (#define для memset в winnt.h), если поддержка стандартых библиотек C отключена. Подставляется intrisic?
<programming>
[Win32] ZeroMemory in Debug 01.08.07 03:55  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
Вроде не должна использовать CRT, но в Debug неожиданно "заходит" (F11 Step Into) в memset.asm.
Компилятор, VC++8.0.
Это норма?
[Win32] Норма 01.08.07 11:02  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> Вроде не должна использовать CRT, но в Debug неожиданно
> "заходит" (F11 Step Into) в memset.asm.
> Компилятор, VC++8.0.
> Это норма?

Если хочешь включить в дебаге intrinsic-и, зайди в Configuration Properties->C++->Optimization->Enable Intrinsic Functions

Либо сделай
#pragma intrinsic(memset)
Тот memset.asm, в который я "ввалился" в дебаге похоже... 02.08.07 05:52  
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
> > Вроде не должна использовать CRT, но в Debug
> неожиданно
> > "заходит" (F11 Step Into) в memset.asm.
> > Компилятор, VC++8.0.
> > Это норма?
>
> Если хочешь включить в дебаге intrinsic-и, зайди в
> Configuration
> Properties->C++->Optimization->Enable Intrinsic
> Functions
>
> Либо сделай
> #pragma intrinsic(memset)

Тот memset.asm, в который я "ввалился" в дебаге похоже одноименная фунция WinAPI c функцией memset C RTL. Интересно, где эта фунция (Win API версия) находится? kernel32? Я не нашёл у MS информации, как линкуется RtlZeroMemory (#define для memset в winnt.h), если поддержка стандартых библиотек C отключена. Подставляется intrisic?
RtlZeroMemory - это не C рантайм, а виндовый рантайм. 17.08.07 11:12  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> Тот memset.asm, в который я "ввалился" в дебаге похоже
> одноименная фунция WinAPI c функцией memset C RTL.
> Интересно, где эта фунция (Win API версия) находится?
> kernel32? Я не нашёл у MS информации, как линкуется
> RtlZeroMemory (#define для memset в winnt.h), если

RtlZeroMemory - это native API функция и находится в ntdll.dll, а уж она то есть всегда

> поддержка стандартых библиотек C отключена. Подставляется
> intrisic?

intrinsic подставляется только если она включена в настройках или прагме.
[C++] [Win32] ZeroMemory in Debug 01.08.07 10:44  
Автор: ElcnU Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Вроде не должна использовать CRT, но в Debug неожиданно
> "заходит" (F11 Step Into) в memset.asm.
> Компилятор, VC++8.0.
> Это норма?
использует в себе memcpy.
я так это переписал

void *MemCopy(void *pvDest,const void *pvSrc,size_t nCount)
{
for(size_t i=0;i<nCount;++i)
((BYTE*)pvDest+i)=*((BYTEpvSrc+i);
return pvDest;
};

void *MemZero(void *pvDest,size_t nCount)
{
for(size_t i=0;i<nCount;++i)
((BYTEpvDest+i)=0;
return pvDest;
};
попутал, memset 01.08.07 10:46  
Автор: ElcnU Статус: Незарегистрированный пользователь
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach