Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3

Открыть файл в папке AppData\Local

29.11.2016, 23:09. Показов 3117. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток!
Вот мои последние изыскания:
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
#pragma once
 
#include <iostream>
#include <cstdlib>
#include <iomanip>
#include <stdio.h>
#include <tchar.h>
#include <fstream>
#include <Shlobj.h>
 
#include "stdafx.h"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    TCHAR szPath[MAX_PATH];
    SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA | CSIDL_FLAG_CREATE, NULL, 0, szPath);
 
    wstring dpath;
    for each (wchar_t p in szPath) dpath += p;
 
    wstring fpath(L"\\Test\\Test.txt");
    wstring fullpath = dpath + fpath;
    
    ifstream fin(fullpath);
    if (!fin)
    {
        cout << "File Test.txt not found\n";
        system("pause");
    }
    int i = 0;
    while (!fin.eof())
        ...
    fin.close();
    ...
}
Путь к системной папке находит, но полный путь не хочет складываться, пробовал самому прописывать путь (wstring dpath(L"C:\...")) путь складывается, но поток файл все-равно не открывает.
Прошу помощи
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.11.2016, 23:09
Ответы с готовыми решениями:

Открыть файл во вложенной папке
Добрый день. К примеру главный программный модуль запускается в каталоге ~/current . Мне нужно получить доступ к файлу находящемуся в...

Не могу открыть файл, размещенный в папке с именем на русском языке
Файл на D:\Решетова_Н\Галкин\Всякое Если помещаю файл непосредственно на D - все работает. Думаю дело в русскоязычных названиях папок.......

Какая связь проекта с файлами в папке AppData\Local\Temp\Temporary ASP.NET Files
Разбираю примеры приложений asp.net mvc4 . И во время выполнения (уже в самом браузере) вылетает ошибка(смотреть картинку) . Я уже долго...

11
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
29.11.2016, 23:41
Цитата Сообщение от Serg34 Посмотреть сообщение
Путь к системной папке находит,
Так доступа нет вероятно.
0
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
29.11.2016, 23:48  [ТС]
John999, Доступ есть. Я этот файл открывал вручную и программно (на C#)
0
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
29.11.2016, 23:55
Цитата Сообщение от Serg34 Посмотреть сообщение
программно (на C#)
Кстати вспомнил, у программ на C# приоритет выше.
Если открыли программой на C#, не откроете С++ программой.
Придется поднатужиться.
Подробности извините не помню.... Нужно у WinApi- шников
спрашивать.
1
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
29.11.2016, 23:57  [ТС]
John999, А почему в строчке
C++
1
wstring fullpath = dpath + fpath;
к переменной fullpath не прибавляется fpath?
0
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 00:03
какая-то загадка
0
 Аватар для iRomul
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
30.11.2016, 03:10
Кстати, а зачем вы строку инициализируете таким способом?
Цитата Сообщение от Serg34 Посмотреть сообщение
for each (wchar_t p in szPath) dpath += p;
Почему просто не передать массив в конструктор?
C++
1
wstring dpath(szPath);
Какая-то особенность работы функции SHGetFolderPath?
1
 Аватар для Serg34
100 / 100 / 33
Регистрация: 20.09.2014
Сообщений: 457
Записей в блоге: 3
30.11.2016, 07:53  [ТС]
iRomul, С русскими символами был косяк.
Сейчас попробовал - уже нормально получается wstring dpath(szPath) и конкатенация пути проходит нормально и файл открывается. Может и в этой строчке было дело..
Вобщем, как говорится утро вечера мудренее
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
30.11.2016, 09:47
Цитата Сообщение от John999 Посмотреть сообщение
Кстати вспомнил, у программ на C# приоритет выше.
Все процессы равны перед системой, от языка это не зависит.
С какими правами запустишь программу - с такими она и будет работать.
2
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 10:59
Цитата Сообщение от Убежденный Посмотреть сообщение
от языка это не зависит.
Конечно язык здесь не причем.
Извините что неясно выразился. Имел в виду приложения работающие
под управлением CLR.
Цитата Сообщение от Убежденный Посмотреть сообщение
С какими правами запустишь программу - с такими она и будет работать.
И до вашего ответа считал, что в файлах управляемой сборки
есть таинственный атрибут вроде System.Security.AccessControl.Above-Average.
Но пока ничего не нашел
0
Ушел с форума
Эксперт С++
 Аватар для Убежденный
16481 / 7444 / 1187
Регистрация: 02.05.2013
Сообщений: 11,616
Записей в блоге: 1
30.11.2016, 12:00
Цитата Сообщение от John999 Посмотреть сообщение
Имел в виду приложения работающие под управлением CLR.
И CLR здесь тоже не при чем

Проверка прав при попытке открыть объект - это, по сути, проход по списку пользователей и групп,
заданных в списке контроля доступа объекта и поиск соответствующих SID-ов в токене потока или
процесса, который запрашивает доступ. На Vista и выше также проверяются метки целостности
объекта (Integrity Levels), а на Windows 8 и выше - разрешения для AppContainer.
Про CLR система безопасности Windows "ничего не знает" и если, например, у токена твоего
процесса отсутствует SID нужной группы, то доступ к объекту, который можно открывать только
членам данной группы, твой процесс не получит, независимо от каких-либо атрибутов сборки.
2
 Аватар для John999
230 / 113 / 79
Регистрация: 17.10.2016
Сообщений: 312
30.11.2016, 12:04
Убежденный, спасибо за объяснение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.11.2016, 12:04
Помогаю со студенческими работами здесь

Вирус расплодился в папке C:\Users\.\AppData\Local\Temp. В диспетчере задач отображается как процессы браузеров
В папке temp несколько гигабайт папок с 11-символьными бессмысленными названий. До конца они не удаляются. Правда в безопасном режиме после...

Путь до папки local (appdata)
Проблема, работаю на Windows 10, использую Environment.GetEnvironmentVariable(&quot;LocalAppData&quot;) + @&quot;\Syspec\fox&quot; У меня всё работает,...

Что за папка \AppData\Local\Temp?
что за папка C:\Users\Name\AppData\Local\Temp ? Добавлено через 20 секунд wind7

Как почистить папку C:\Users\****\AppData\Local\Google\Chrome
Размер папки C:\Users\****\AppData\Local\Google\Chrome достиг 3 гигов, (Application 1гиг User Data 2гига), можно ли эти папки просто...

C:\Users\A4F7~1\AppData\Local\Temp\234429Log.iniis lost
Такое окошко с ошибкой возникает при загрузке системы. Проблема появилась после чистки папки Temp


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru