Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
1

Как пример из MSDN запустить в Visual Studio 2017?

22.07.2018, 09:21. Показов 986. Ответов 12
Метки нет (Все метки)

Вот такой пример: Example: Open a File for Reading, как его запустить в Visual Studio 2017?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.07.2018, 09:21
Ответы с готовыми решениями:

Не удается запустить программу в Visual studio 2017
Что делать?

Не удается запустить программу Visual Studio 2017
Здравствуйте, первый раз пользуюсь Visual Studio 2017, при компиляции кода выдает ошибки, как...

Как прикрутить MSDN к Visual Studio 6
Подскажите кто-нибудь плиз как установить MSDN Library таким образом, чтобы Visual Studio 6...

Установка C++ Redistributable Visual Studio 2017 и Visual C++ для Visual Studio 2015
Доброго дня. Пытаюсь изучить PHP. Решил установить сервер локальный. В инструкции сказано: "Ещё...

12
155 / 107 / 36
Регистрация: 27.06.2018
Сообщений: 248
22.07.2018, 11:44 2
& заменит на & нужно
1
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
22.07.2018, 12:35  [ТС] 3
Вынужден повторить: КАК пример из MSDN запустить в Visual Studio 2017?

Нужна инструкция: по-шагам.
0
155 / 107 / 36
Регистрация: 27.06.2018
Сообщений: 248
22.07.2018, 13:06 4
Цитата Сообщение от barabashkakvn Посмотреть сообщение
по-шагам
А толку от этого тогда? Это может вообще не тот код

Подойти к компьютеру
Включить его
Открыть студию
Создать консольный проект
Удалить ф-ию main
Скопировать код
& заменит на &
Выбрать в меню пункт Отладка-Свойства и вписать желаемые параметры командной строки
Запустить
Отойти от компьютера
0
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
22.07.2018, 13:17  [ТС] 5
Вынужден повторить: КАК пример из MSDN запустить в Visual Studio 2017?

Нужна инструкция: по-шагам.
Цитата Сообщение от Human_foot Посмотреть сообщение
А толку от этого тогда? Это может вообще не тот код
Подойти к компьютеру
Включить его
Открыть студию
Создать консольный проект
Удалить ф-ию main
Скопировать код
& заменит на &
Выбрать в меню пункт Отладка-Свойства и вписать желаемые параметры командной строки
Запустить
Отойти от компьютера
Итак, если убрать шутки-прибаутки, то:
создать консольный проект - это получилось.
удалить Main - удалил
скопировал текст из MSDN справик и вставил

Итог: *ева туча ошибок.

Может, кто подсказать, как пример из MSDN запустить в Visual Studio?
0
155 / 107 / 36
Регистрация: 27.06.2018
Сообщений: 248
22.07.2018, 13:21 6
ВСЕ & заменит на &

Проверял - ошибок нет, работает всё
0
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
22.07.2018, 13:26  [ТС] 7
Цитата Сообщение от Human_foot Посмотреть сообщение
ВСЕ & заменит на &
Проверял - ошибок нет, работает всё
Ошибок куча.
Миниатюры
Как пример из MSDN запустить в Visual Studio 2017?  
0
155 / 107 / 36
Регистрация: 27.06.2018
Сообщений: 248
22.07.2018, 13:34 8
Откуда тогда там amp ?
Зачем всё нужно было удалять? Читай инструкцию ещё раз пять и не делай лишних движений. Написано Удалить ф-ию main, значит удаляй только её.
0
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
22.07.2018, 13:39  [ТС] 9
Цитата Сообщение от Human_foot Посмотреть сообщение
Откуда тогда там amp ?
Зачем всё нужно было удалять? Читай инструкцию ещё раз пять и не делай лишних движений. Написано Удалить ф-ию main, значит удаляй только её.
Функция main удалена, замена &amp на & произведена. Проект создавался как консольный. Куча ошибок.
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
// Open a File for Reading.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <windows.h>
#include <tchar.h>
#include <stdio.h>
#include <strsafe.h>
 
#define BUFFERSIZE 5
DWORD g_BytesTransferred = 0;
 
void DisplayError(LPTSTR lpszFunction);
 
VOID CALLBACK FileIOCompletionRoutine(
    __in  DWORD dwErrorCode,
    __in  DWORD dwNumberOfBytesTransfered,
    __in  LPOVERLAPPED lpOverlapped
);
 
VOID CALLBACK FileIOCompletionRoutine(
    __in  DWORD dwErrorCode,
    __in  DWORD dwNumberOfBytesTransfered,
    __in  LPOVERLAPPED lpOverlapped)
{
    _tprintf(TEXT("Error code:\t%x\n"), dwErrorCode);
    _tprintf(TEXT("Number of bytes:\t%x\n"), dwNumberOfBytesTransfered);
    g_BytesTransferred = dwNumberOfBytesTransfered;
}
 
//
// Note: this simplified sample assumes the file to read is an ANSI text file
// only for the purposes of output to the screen. CreateFile and ReadFile
// do not use parameters to differentiate between text and binary file types.
//
 
void __cdecl _tmain(int argc, TCHAR *argv[])
{
    HANDLE hFile;
    DWORD  dwBytesRead = 0;
    char   ReadBuffer[BUFFERSIZE] = { 0 };
    OVERLAPPED ol = { 0 };
 
    printf("\n");
    if (argc != 2)
    {
        printf("Usage Error: Incorrect number of arguments\n\n");
        _tprintf(TEXT("Usage:\n\t%s <text_file_name>\n"), argv[0]);
        return;
    }
 
    hFile = CreateFile(argv[1],               // file to open
        GENERIC_READ,          // open for reading
        FILE_SHARE_READ,       // share for reading
        NULL,                  // default security
        OPEN_EXISTING,         // existing file only
        FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, // normal file
        NULL);                 // no attr. template
 
    if (hFile == INVALID_HANDLE_VALUE)
    {
        DisplayError(TEXT("CreateFile"));
        _tprintf(TEXT("Terminal failure: unable to open file \"%s\" for read.\n"), argv[1]);
        return;
    }
 
    // Read one character less than the buffer size to save room for
    // the terminating NULL character. 
 
    if (FALSE == ReadFileEx(hFile, ReadBuffer, BUFFERSIZE - 1, &;ol, FileIOCompletionRoutine))
    {
        DisplayError(TEXT("ReadFile"));
        printf("Terminal failure: Unable to read from file.\n GetLastError=%08x\n", GetLastError());
        CloseHandle(hFile);
        return;
    }
    SleepEx(5000, TRUE);
    dwBytesRead = g_BytesTransferred;
    // This is the section of code that assumes the file is ANSI text. 
    // Modify this block for other data types if needed.
 
    if (dwBytesRead > 0 & amp;&; dwBytesRead <= BUFFERSIZE - 1)
    {
        ReadBuffer[dwBytesRead] = '\0'; // NULL character
 
        _tprintf(TEXT("Data read from %s (%d bytes): \n"), argv[1], dwBytesRead);
        printf("%s\n", ReadBuffer);
    }
    else if (dwBytesRead == 0)
    {
        _tprintf(TEXT("No data read from file %s\n"), argv[1]);
    }
    else
    {
        printf("\n ** Unexpected value for dwBytesRead ** \n");
    }
 
    // It is always good practice to close the open file handles even though
    // the app will exit here and clean up open handles anyway.
 
    CloseHandle(hFile);
}
 
void DisplayError(LPTSTR lpszFunction)
// Routine Description:
// Retrieve and output the system error message for the last-error code
{
    LPVOID lpMsgBuf;
    LPVOID lpDisplayBuf;
    DWORD dw = GetLastError();
 
    FormatMessage(
        FORMAT_MESSAGE_ALLOCATE_BUFFER |
        FORMAT_MESSAGE_FROM_SYSTEM |
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        dw,
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
        (LPTSTR) &;lpMsgBuf,
        0,
        NULL);
 
    lpDisplayBuf =
        (LPVOID)LocalAlloc(LMEM_ZEROINIT,
        (lstrlen((LPCTSTR)lpMsgBuf)
            + lstrlen((LPCTSTR)lpszFunction)
            + 40) // account for format string
            * sizeof(TCHAR));
 
    if (FAILED(StringCchPrintf((LPTSTR)lpDisplayBuf,
        LocalSize(lpDisplayBuf) / sizeof(TCHAR),
        TEXT("%s failed with error code %d as follows:\n%s"),
        lpszFunction,
        dw,
        lpMsgBuf)))
    {
        printf("FATAL ERROR: Unable to output error code.\n");
    }
 
    _tprintf(TEXT("ERROR: %s\n"), (LPCTSTR)lpDisplayBuf);
 
    LocalFree(lpMsgBuf);
    LocalFree(lpDisplayBuf);
}
0
155 / 107 / 36
Регистрация: 27.06.2018
Сообщений: 248
22.07.2018, 14:01 10
Цитата Сообщение от barabashkakvn Посмотреть сообщение
замена &amp на &
А может быть я писал &amp; заменит на & ? ТОЧКА С ЗАПЯТОЙ



C++
1
if (dwBytesRead > 0 & amp;&; dwBytesRead <= BUFFERSIZE - 1)
А вот тут почему не произведена замена? Я ведь писал
Цитата Сообщение от Human_foot Посмотреть сообщение
ВСЕ &amp; заменит на &
ВСЕ-ВСЕ-ВСЕ
0
Эксперт .NET
5553 / 3605 / 1492
Регистрация: 09.05.2015
Сообщений: 8,660
22.07.2018, 14:05 11
Цитата Сообщение от Human_foot Посмотреть сообщение
А вот тут почему не произведена замена?
Там кроме этого еще ниже есть не замененное...
А еще &;ol...
0
0 / 0 / 0
Регистрация: 02.02.2013
Сообщений: 25
22.07.2018, 14:11  [ТС] 12
В общем какой-то бред.
Пример из официальной справки MSDN нельзя запустить в VS.
0
Human_foot
22.07.2018, 14:12     Как пример из MSDN запустить в Visual Studio 2017?
  #13

Не по теме:

Цитата Сообщение от Someone007 Посмотреть сообщение
кроме этого еще ниже есть не замененное
Ну дык это осталось от неправильной замены

Цитата Сообщение от barabashkakvn Посмотреть сообщение
Пример из официальной справки MSDN нельзя запустить в VS.
Пример правильный, вэб-мастера неправильные :)

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.07.2018, 14:12

В коде возникли ошибки при переходе с Visual studio 2013 на Visual studio 2017
Добрый день, решил попробовать поменять свою 2013 студию на 2017 и заметил такую проблему, при...

Ошибка запуск проекта Visual Studio 2012 на Visual Studio 2017
Предупреждение CS0618 'ZipEntry.Extract(string, bool)&quot; является устаревшим: 'Please use method...

Visual Studio 2017. Как удалить?
Visual Studio 2017. Установил. Потом пробовал удалить, но до конца удалить не получилось, из-за...

Как подружить Visual Studio 2017 и QT 5.8?
Ребят, спасайте. Переустанавливал систему, решил поставить VS 2017. Но теперь хз как подружить с...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru