Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097

Как вывести полный путь куда установленная виндовс и имя текущего пользователя?

24.10.2017, 20:46. Показов 2985. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
// Lab1_v1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
 
#define UNLEN 256;
using namespace std;
 
int main()
{
 
    setlocale(LC_ALL, ".1251");
    cout << "Варіант 1:" << endl;
    cout << " Директорiя, в котру встановлено ОС Windows та iм'я комп'ютера.!" << endl;
 
    char path[100];
    LPDWORD nSize[100];
 
    GetSystemDirectory(LPWSTR(path),  100);
    cout << "System Directory is " << path << endl;
 
    GetWindowsDirectory(LPWSTR(path), 100);
    cout << "Windows directory is " << path << endl;
 
    GetUserName(LPWSTR(path), nSize);
    cout << "UserName is " << path << endl;
    system("pause");
    return 0;
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.10.2017, 20:46
Ответы с готовыми решениями:

Как получить имя текущего пользователя Windows?
Нашел тут пример только для C++ Builder, но у меня на Dev C++ он не компилируется, не понимает AnsiString. По этому спрашиваю как...

Куда происходит запись файла, если не указать полный путь до него, а только одно его имя?
Доброго всем здравия, душевного и телесного, подскажите пожалуйста где находится этот самый файл куда мы что записываем, а затем считываем?...

Как узнать имя текущего профиля виндовс
застрял на вот такой задаче: как узнать имя текущего профиля виндовс? желательно чтоб работало на ХР,висте и 7 П.С. гугл помогать...

10
15 / 16 / 6
Регистрация: 24.10.2017
Сообщений: 48
25.10.2017, 09:34
Лучший ответ Сообщение было отмечено scherbakovss201 как решение

Решение

кто вас только программировать учил.
и забудьте об std::endl. есть символ '\n'. если нужен flush то так и указывайте << '\n' << std::flush;
C++
1
2
3
4
5
6
7
8
9
10
11
wchar_t path[MAX_PATH];
DWORD bufCharCount[MAX_PATH];
 
GetSystemDirectory(path,  MAX_PATH);
std::wcout << L"System Directory is " << path << L'\n';
 
GetWindowsDirectory(path, MAX_PATH);
std::wcout << L"Windows directory is " << path << L'\n';
 
GetUserName( path, bufCharCount );
std::wcout << L"UserName is " << path << L'\n';
0
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
25.10.2017, 16:41  [ТС]
Цитата Сообщение от 532235 Посмотреть сообщение
кто вас только программировать учил.
Выводит диск С,а не полный путь.
0
15 / 16 / 6
Регистрация: 24.10.2017
Сообщений: 48
25.10.2017, 17:35
У меня работает
Миниатюры
Как вывести полный путь куда установленная виндовс и имя текущего пользователя?  
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
25.10.2017, 20:12
Цитата Сообщение от 532235 Посмотреть сообщение
забудьте об std::endl
чем плох endl?
0
15 / 16 / 6
Регистрация: 24.10.2017
Сообщений: 48
25.10.2017, 20:20
Цитата Сообщение от _lunar_ Посмотреть сообщение
чем плох endl?
0
15 / 15 / 8
Регистрация: 01.10.2017
Сообщений: 97
25.10.2017, 20:21
532235, кто вас только программировать учил!!!
коли табу на использование std::endl, ну так каого черта забываем про std:wcout ?!
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
#include <windows.h>
 
#define STRLEN(x) (sizeof(x)/sizeof(TCHAR) - 1)
const TCHAR szMsg[] = L"What's your name?\n";
 
void ChangeTextColor(HANDLE hSomeHandle) {
  INT nArgs = 0;
  LPWSTR lpCommandLine = GetCommandLine();
  LPWSTR* lpArgs = CommandLineToArgvW(lpCommandLine, &nArgs);
  if(nArgs >= 2 && 0 == lstrcmpi(lpArgs[1], L"green")) {
    SetConsoleTextAttribute(hSomeHandle, FOREGROUND_GREEN);
  }
  LocalFree(lpArgs);
}
 
int main() {
  HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
  HANDLE hStdin = GetStdHandle(STD_INPUT_HANDLE);
  TCHAR szName[16];
  TCHAR szResp[32];
  DWORD dwCount = 0;
 
  ChangeTextColor(hStdout);
 
  WriteConsole(hStdout, &szMsg, STRLEN(szMsg), &dwCount, NULL);
  ReadConsole(hStdin, &szName, STRLEN(szName), &dwCount, NULL);
 
  if(dwCount >= 2 &&
    '\n' == szName[dwCount-1] &&
    '\r' == szName[dwCount-2]) {
    szName[dwCount-2] = '\0';
  } else if(dwCount > 0) {
    szName[dwCount] = '\0';
  }
 
  wsprintf(szResp, L"Hello, %s!\n", szName);
  WriteConsole(hStdout, &szResp, lstrlen(szResp), &dwCount, NULL);
 
  ExitProcess(0);
}
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
25.10.2017, 21:49
532235, нет никакой нужды экономить наносекунды на 10 строках кода.
видео ни о чём...
1
25 / 9 / 17
Регистрация: 22.12.2015
Сообщений: 2,097
25.10.2017, 22:06  [ТС]
Цитата Сообщение от 532235 Посмотреть сообщение
кто вас только программировать учил.
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
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
#include <cstdlib>
 
using namespace std;
 
 
int main()
{
 
    setlocale(LC_ALL, ".1251");
    cout << "Варіант 1:" << endl;
    cout << " Директорiя, в котру встановлено ОС Windows та iм'я комп'ютера.!" << endl;
 
    
    cout << "%WINDIR% = " << getenv("WINDIR") << endl
        << "%USERNAME% = " << getenv("USERNAME") << endl;
 
 
    
 
    system("pause");
    return 0;
}
Самоучка,буду благодарен если научите.
0
15 / 16 / 6
Регистрация: 24.10.2017
Сообщений: 48
26.10.2017, 07:56
Цитата Сообщение от scherbakovss201 Посмотреть сообщение
Самоучка,буду благодарен если научите.
уже написал и с использованием функций

Цитата Сообщение от _lunar_ Посмотреть сообщение
нет никакой нужды экономить наносекунды на 10 строках кода.
видео ни о чём...
Кликните здесь для просмотра всего текста
Я и забыл. На этом форуме сидят уважаемые признанные гении

мда. Б-г с вами
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
26.10.2017, 08:40
Цитата Сообщение от 532235 Посмотреть сообщение
мда. Б-г с вами
и вам того же
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.10.2017, 08:40
Помогаю со студенческими работами здесь

Можно ли в консоль вывести имя текущего пользователя windows
Можно ли в консоль вывести имя текущего пользователя windows

Как узнать имя текущего пользователя?
Ave! Не подскажите как можно узнать имя пользователя пк. Мне нужно что бы программа знала имя пользователя. То есть была переменная с...

Как узнать имя текущего пользователя?
Здравствуйте. Мне нужно узнать имя текущей учетной записи. Подскажите, как это сделать. Гуглю и ничего найти не могу найти.

Как узнать имя текущего пользователя
Как узнать имя текущего пользователя виндоуз 2000 чтобы можно было использовать его в программе на access?

Нужно получить имя текущего пользователя, как?
Есть такая функция GetUserName, которая возвращает название аккаунта который запустил текущий процесс. Но проблема в том, что процесс...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru