Как передать собранные и обработанные данные фреймов из эксперта?

 

Приветствую. 

При запуске эксперта на оптимизацию в локальной сети или облаке, данные фреймов собираются в функции OnTesterPass(), а в функции  OnTesterDeinit() собранная информация обрабатывается, и должна быть передана пользователю. 

Коллеги, как предлагаете это делать? 


До последнего времени я просто создавал файл, в который скидывал обработанные данные. Однако, в последних билдах что-то изменилось - файл не создается. Раньше он исправно создавался в локальной папке терминала (работает режим Portable). Однако, с изменениями файл перестал создаваться. 

Где лыжи смазать? Какие предложите варианты? 

 

файл в RAM и перейти к нему по символической ссылке

насчет portable не знаю, в обычном режиме работает пока
 
Renat Akhtyamov #:

файл в RAM и перейти к нему по символической ссылке

насчет portable не знаю, в обычном режиме работает пока

Хм. Спасибо. Попробую. А он не исчезнет, когда эксперт завершает работу? 

Как создать такой файл? Что-то я среди файловых функций не нахожу... Или тут надо глядеть в сторону пайпов - никогда с ними дела не имел... 

CFilePipe ? Сейчас поглядим... 

 
Georgiy Merts #:

Хм. Спасибо. Попробую. А он не исчезнет, когда эксперт завершает работу? 

Как создать такой файл? Что-то я среди файловых функций не нахожу... Или тут надо глядеть в сторону пайпов - никогда с ними дела не имел... 

CFilePipe ? Сейчас поглядим... 

Напишите результат, а то работа с файлами как-то не комильфо.

 
Кажется в общей папке надо создавать файл. Разумеется в OnTesterDeinit().
 
Dmitry Fedoseev #:
Кажется в общей папке надо создавать файл. Разумеется в OnTesterDeinit().

Каким-то образом можно залить данные в оперативку, или нет?

 
Vitaly Muzichenko #:

Каким-то образом можно залить данные в оперативку, или нет?

Сложный вариант - через WinAPI.

Простой - создать диск в RAM через драйвер ImDisk, например. Или в GPU RAM через GpuRamDrive.

 
Edgar Akhmadeev #:

Сложный вариант - через WinAPI.

Простой - создать диск в RAM через драйвер ImDisk, например. Или в GPU RAM через GpuRamDrive.

Можно так создать, что получишь "Синий экран"

Как через WinAPI сделать?

 
Vitaly Muzichenko #:

Напишите результат, а то работа с файлами как-то не комильфо.

Давай на "ты". Пока с именованными потоками не разобрался. Как обратиться - ясно, а вот как создать, непонятно пока. 

 
Dmitry Fedoseev #:
Кажется в общей папке надо создавать файл. Разумеется в OnTesterDeinit().

Пытаюсь. Если во время оптимизации - у меня почему-то нигде файл не создается. Вобще непонятно, никаких ни ошибок, ничего. Вроде все нормально прошло, а вот файл не был создан, хотя, операторы есть. 

Исследую дальше. 

 
Vitaly Muzichenko #:

Каким-то образом можно залить данные в оперативку, или нет?

Главный вопрос в сохранении. 

Судя по всему - фреймы по-прежнему собираются, и обрабатываются. Но вот результат... раньше я писал в файл, но последние пару недель (или около того) - какие-то страные события произошли. Файл перестал писаться. Хотя, ошибки в логах нет.

Чего-то я не учитываю... Исследую вопрос дальше по мере сил и времени.