Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 20.12.2015, 10:04   #131
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,217
По умолчанию

В вашем случае без L место ошибки изменилось.
char*, wchar_t* и string - это разные типы данных.
Читайте документацию к std::string на предмет приведения к char*/wchar_t*
waleri вне форума Ответить с цитированием
Старый 21.12.2015, 09:01   #132
Dima-91
Форумчанин
 
Регистрация: 28.09.2010
Сообщений: 198
По умолчанию

Код:
#include <stdio.h>
#include <fstream>
#include <iomanip>
#include <stdlib.h>
#include <iostream.h>
#include <string>
#include <windows.h>
#include <Shellapi.h>

 int _tmain(int argc, _TCHAR* argv[])
{
	ifstream F;
	string s;
	wchar_t ss;
	F.open("web.txt", ios::out);
	while (!F.eof())
	{
		int k = 1;
		getline(F,s);
		if ((s != "<start>") && (s != "<end>"))
		{
			k++;
			for (int i = 5; i < s.length()-5; i++)
			{
				ss +=s[i];
			}
			ShellExecuteA(Handle, L"open", ss, 0, 0, SW_SHOWNORMAL);
			cout<<"["<<k<<"]"<<ss;
		}
	}
	system("pause");
	return 0;
}
Попытался использовать wchar_t, записав туда строку.
Ошибки:
[bcc32 Error] webm1.cpp(37): E2451 Undefined symbol 'Handle'
[bcc32 Error] webm1.cpp(37): E2034 Cannot convert 'wchar_t const[5]' to 'const char *'
[bcc32 Error] webm1.cpp(37): E2342 Type mismatch in parameter 'lpOperation' (wanted 'const char *', got 'const wchar_t *')
Dima-91 вне форума Ответить с цитированием
Старый 21.12.2015, 09:19   #133
Alex11223
Заблокирован
 
Регистрация: 12.01.2011
Сообщений: 19,504
По умолчанию

wchar_t это ж один символ, не путайте с указателем wchar_t*.

В предыдущих сообщениях все написано.

Если хотите читать wstring, то берите wifstream. И зачем вы тут взяли ShellExecuteA? Он наоборот для не юникода.

Но все винапи функции принимают char*/wchar_t* поэтому смотрите в документации по std::string/std::wstring как конвертировать.

Ну а первая ошибка потому что у вас нет переменной с таким именем. Видимо код скопипасчен без чтения документации https://msdn.microsoft.com/en-us/lib...=vs.85%29.aspx из билдеровского приложения с формами, там есть такое свойство у форм. Можно просто 0 передать.
Alex11223 вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что вас мотивирует, почему вы предпочитаете именно работу за компьютером, работу программиста? sgasgar Свободное общение 47 03.05.2016 07:27
Какая у вас была мотивация для начала и изучения программирования? monolit9951 Свободное общение 22 14.02.2014 18:57
Мотивация к программированию Nik_Parker Свободное общение 30 05.10.2013 18:12
Программирование, мотивация, перспективы Frants Свободное общение 6 03.10.2012 22:52


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840