
Orphey
14.02.2017
17:44:05
логер при том что если файл не открылся, потом попытка открыть его снова - хлоп ошибка от getlasterror

Berkus
14.02.2017
17:44:07

Orphey
14.02.2017
17:44:17
да, может
потому что при открытии файла создается хэндл

Google

Orphey
14.02.2017
17:45:13
стоп, выходит что твой логер вообще работает неверно

Stanislav
14.02.2017
17:45:22

Orphey
14.02.2017
17:45:22
он срабатывает на открытие файла
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365430(v=vs.85).aspx

Stanislav
14.02.2017
17:46:51
открытие файла срабатвает позже

Orphey
14.02.2017
17:46:58
смотри, HFILE это хэндл, если чтение сводится к тому что вызвается эта апи

Stanislav
14.02.2017
17:47:14
хфайлов нет

Orphey
14.02.2017
17:47:34
но он же должен как-то открыться
я предполагаю что он работает в итоге через эту апи

Stanislav
14.02.2017
17:48:32
void write(LogLevel lvl, const char *str) {
if (!(lvl >= _level))
return;
if (_fp != stdout) {
_fp = fopen(log_path, "a");
if (_fp == NULL) {
perror("The following error occurred");
return;
}
}
fprintf(_fp, "%s %s\n", Logger::localtime_ms_s().c_str(), str);
if (_fp != stdout)
fclose(_fp);
}

Orphey
14.02.2017
17:50:09
fopen должен давать ошибку в errno

Stanislav
14.02.2017
17:50:26

Orphey
14.02.2017
17:51:01
хрень какая-то выходит, получается

Google

Stanislav
14.02.2017
17:51:20
вот и я сижу думаю уже который день
толи я идиот, толи где

Orphey
14.02.2017
17:53:56
может какие-то другие апи вызываются между записью и WindowsError()?

Stanislav
14.02.2017
17:54:18
не
это весь код

Orphey
14.02.2017
17:56:01
а первая либа тебе нужна при этом?
наскок я понимаю ты её подгружаешь, а потом спрашиваешь её путь
путь который ты мог узнать и без этого)

Stanislav
14.02.2017
17:57:37
NULL не катит, там к процессу путь

Orphey
14.02.2017
17:57:48
сама к себе?
ага, понятно

Stanislav
14.02.2017
17:58:39

Orphey
14.02.2017
18:00:14
одно могу сказать точно, что если логер работает в потоке, то GetLastError распространяется только на тот поток в котором вызван

Stanislav
14.02.2017
18:01:02

Orphey
14.02.2017
18:01:12
pezdec

Stanislav
14.02.2017
18:01:43
я не зря поставил комменты же

Orphey
14.02.2017
18:04:32
ладно, а как насчёт такого варианта, что ты грузишь не прокси либу, а ту которую уже подгрузил?
а ну да, опять же не вариант

Stanislav
14.02.2017
18:07:11

Google

Orphey
14.02.2017
18:07:21
я понял уже)
может подгружается другая либа по другому пути с тем же названием?
тогда GetModuleHandle может вернуть путь не к той либе
но это всё равно не решает твою ошибку

Stanislav
14.02.2017
18:16:04

Orphey
14.02.2017
18:18:48
можешь юзнуть SetLastError(0,0)
если тебе похуй

Stanislav
14.02.2017
18:49:23
нене, мне интересно ) че оно

Maxim
14.02.2017
20:48:09
Reindex.. please wait
Reindex.. please wait

Square
14.02.2017
21:06:52
Логгер это ваш... Оно ж getlasterror в кишках зовёт? Но зачем тебе звать ее если все гут?

Square
14.02.2017
21:08:14
Ub
Или я не прав? Надо мсдн внимательно почтать
Чо спите уже? Чорт. Напишите потом как порешалось, мне тож интересно

Orphey
14.02.2017
21:16:33
никак не решилось
я GetLastError обычно только в DEBUG юзаю

Utah
14.02.2017
21:18:53

Berkus
14.02.2017
21:19:23
а дебиан для тех, кто это говно уже давно жрет, истинно так

Utah
14.02.2017
21:19:33
Для виндузоидов.

Google

Utah
14.02.2017
21:19:59

Berkus
14.02.2017
21:21:13
это была шутка, если ты вдруг серьезно решился меня поправлять - gentoo для красноглазых школьников-райсеров

Orphey
14.02.2017
21:24:38
чот на слабом пк не получилось за вменяемое время собрать нормальное ядро, для слабого пк

Grigor
14.02.2017
21:42:48
На дохлом двух поточном атоме ядро в один тред собиралось порядка 20 минут

Orphey
14.02.2017
21:44:33
хуй зна. ssd, 2 ghz*2
сутки почти

Admin
ERROR: S client not available

Grigor
14.02.2017
21:44:56
Лолшто

Evgeniy
14.02.2017
21:45:10
Омг

Orphey
14.02.2017
21:45:22
внатуре

Sergey
14.02.2017
21:50:03
о_О

Utah
14.02.2017
21:50:09

Square
14.02.2017
21:53:21

Nikolay
14.02.2017
21:56:45

Sheridan
14.02.2017
21:57:29

Andrei
14.02.2017
22:02:18
А у меня и сейчас час собирается.

Sheridan
14.02.2017
22:12:57

Surreal
14.02.2017
22:26:11
нене, мне интересно ) че оно
А у вас my_dll.dll и .exe не в одной папке лежат? Может error code ставит GetModuleHandleA(), возвращает 0, который передается в GetModuleFileNameA(), которая выдает путь к .exe и, возможно, не трогает error code в случае успешного завершения? Дальше вы убираете из пути имя файла (.exe) и добавляете имя новой либы, которая подгружается, потому что путь в итоге правильный.

Vladislav
14.02.2017
22:28:05
http://www.croco.net/croco/papers/stolyarov_2010.pdf

Andre
14.02.2017
22:57:41

Google

Oleg
14.02.2017
22:58:26
I Do Not Know C
http://kukuruku.co/hub/programming/i-do-not-know-c

Andre
14.02.2017
22:58:51
Reindex.. please wait

Vladislav
14.02.2017
22:59:19

Oleg
14.02.2017
23:00:28
Упс, :)

Alex Фэils?︙
15.02.2017
07:14:47

Andrei
15.02.2017
07:21:10
https://habrahabr.ru/post/321856/
джавабляди совсем ебанулись

Sergey
15.02.2017
07:24:27
Проиграл с комментария про RAII и смартпоинтеры

Alex Фэils?︙
15.02.2017
07:25:34

Daniil
15.02.2017
07:41:17
https://habrahabr.ru/post/321856/
Они же там упоролись.
Алсо, в ведройд-чате многие разработчики парятся на тему сборки муссора. Мол не создавай лишние объекты и все такое. Типо бедный gc задохнется. Такие реплики всегда вызывали простой вопрос: а зачем он (gc) вообще тогда нужен.

mefest
15.02.2017
07:50:30

Daniil
15.02.2017
07:50:54

Alex Фэils?︙
15.02.2017
07:55:52
J2me. J2ce. Всё.

Cyber
15.02.2017
08:10:23
я так и не понял из статьи, раньше разве нельзя было просто отрубить GC? Вроде многие его отрубают и просто сервер ночью перезагружают.

Дед Пегас
15.02.2017
08:12:19
Знавал jvm за большие бабки, где фичей был отпиленный gc. И это продаётся.
Т.е. проще купить такое, чем учить народ.

Ilya
15.02.2017
08:19:58
Посоны, есть что-нибудь посвежее почитать по типу 4-ех книг Таненбаума, в особенности интересуют Сети и Современные ОС, или они ещё не такие старые?=)

Aldar
15.02.2017
08:20:56