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

Синхронизация времени Windows (ошибка прав доступа) - C++

Восстановить пароль Регистрация
 
Dragokas
Автор FAQ
 Аватар для Dragokas
14519 / 6346 / 783
Регистрация: 25.12.2011
Сообщений: 9,878
Записей в блоге: 14
24.02.2013, 23:34     Синхронизация времени Windows (ошибка прав доступа) #1
Необработанное исключение по адресу 0x749BC9F1 в TimeSync.exe: 0xC0000005: нарушение прав доступа при исполнении по адресу 0x00000000. Ничего более конкретного.

"Служба времени Windows" запущена. Вручную обновляется нормально.
Бинарник запускал с повышенными правами.
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include "stdafx.h"
#include <windows.h> 
#include <stdio.h> 
 
typedef DWORD (WINAPI * W32TimeSyncNow_t) (  
    LPCWSTR szComputer,  
    BOOL bWait,  
    DWORD dwFlags); 
 
#define W32TimeFlag_No_Soft 0x01 
#define W32TimeFlag_Unknown1 0x02 
#define W32TimeFlag_Rediscover 0x04 
#define W32TimeFlag_Update 0x08 
 
int _tmain()
{ 
    LPWSTR szError = NULL; 
    HMODULE hModule = LoadLibraryW (L"w32time.dll"); 
    W32TimeSyncNow_t W32TimeSyncNow = (W32TimeSyncNow_t) GetProcAddress (hModule, "W32TimeSyncNow"); 
 
    DWORD dwRet = W32TimeSyncNow (NULL, TRUE, W32TimeFlag_No_Soft | W32TimeFlag_Unknown1); 
 
    switch (dwRet) 
    { 
        case 0: 
            szError = L"The command completed successfully."; 
            break; 
        case 1: 
            szError = L"The computer did not resync because no time data was available."; 
            break; 
        case 2: 
            szError = L"The computer did not resync because only stale time data was available."; 
            break; 
        case 3: 
            szError = L"The computer did not resync because the time service was shutting down."; 
            break; 
        case 4: 
            szError = L"The computer did not resync because the required time change was too big."; 
            break; 
        default: 
        { 
            LPWSTR szBuffer = NULL; 
            DWORD dwLen = FormatMessageW ( 
                FORMAT_MESSAGE_ALLOCATE_BUFFER |  
                FORMAT_MESSAGE_IGNORE_INSERTS | 
                FORMAT_MESSAGE_FROM_SYSTEM | 
                FORMAT_MESSAGE_MAX_WIDTH_MASK, 
                NULL,  
                dwRet,  
                0, 
                (LPWSTR) &szBuffer, 
                0, 
                NULL); 
 
            if (NULL != szBuffer && 0 != dwLen) 
            { 
                szError = (LPWSTR) calloc (dwLen + 1, sizeof (wchar_t)); 
                wcscpy_s (szError, dwLen + 1, szBuffer); 
                LocalFree (szBuffer); 
            }
 
            dwRet = GetLastError (); 
            break; 
        }
    }
 
    wprintf (L"%s\n", szError); 
    FreeLibrary (hModule); 
    return 0; 
}
Вложения
Тип файла: rar TimeSync.cpp.rar (964 байт, 10 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2013, 23:34     Синхронизация времени Windows (ошибка прав доступа)
Посмотрите здесь:

C++ Ошибка: Нарушение прав доступа
C++ RTTI ошибка прав доступа
C++ Ошибка: нарушение прав доступа при чтении
Ошибка: Нарушение прав доступа при чтении C++
Ошибка времени исполнения: нарушение прав доступа при чтении C++
C++ Ошибка: нарушение прав доступа по адресу
Ошибка прав доступа при чтении C++
C++ Ошибка: нарушение прав доступа при чтении по адресу

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 17:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru