Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.12.2008, 00:34
Активиксер новичег
 
Сообщений: n/a

помогите с OpenTextFile
<html >
<head>
<script language="JavaScript">
function readfile()
{
var fso,filehandle,contents;
fso = new ActiveXObject("Scripting.FileSystemObject");
filehandle = fso.OpenTextFile("info.txt",1);
contents = filehandle.ReadAll();
if (contents) document.all("filecontents").value = contents;
filehandle.close();
}
</script>
</head>
<body onload="readfile()">
<textarea id="filecontents" cols="50" rows="30"></textarea>

</body>
</html>


почему этот код не пашет?у меня есть index.html и info.txt в одной папке...как открыть info.txt не прописывая полный путь?где можно почитать что-нибудь на эту тему(кроме msdn - там ничего не понятно )

Последний раз редактировалось Андрей Параничев, 13.12.2008 в 01:11. Причина: Пользуйтесь bb-кодами [js] и [html] для оформления листингов кода в теле сообщения
Ответить с цитированием
  #2 (permalink)  
Старый 13.12.2008, 00:56
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от Активиксер новичег
открыть info.txt не прописывая полный путь?
а у вас, что с полным путем ЭТО работает?
а собственно по сабжу, этот код, в прниципе НЕ ДОЛЖЕН РАБОТАТЬ.
НИКОГДА!!!
а теперь почему он не должен работать
1)соображения безопасности. если бы вы могли прочитать любой файл у клиента, то вы бы могли своровать унего любую конфиденциальную инфу.
пароли, номера кредиток и так далее.спрашивается зачем это надо пользоваетлю?именно поэтому создатели браузеров и блокируют эту и аналогичные возможности
2)ActiveXObject действует только в IE, и в других браузерах АБСОЛЮНО никак. а ActiveXObject("Scripting.FileSystemObject") , по умолчанию даже в нем не должно действовать(если порутся в настройках, может вам и удастся запустить такой код в СВОЕМ браузере.но не в чужом=))
Ибо ActiveXObject("Scripting.FileSystemObject") предназначен совсем для других целей, но никак не для запуска из браузера
Ответить с цитированием
  #3 (permalink)  
Старый 13.12.2008, 01:12
любопытный
 
Сообщений: n/a

Цитата:
а у вас, что с полным путем ЭТО работает?
а собственно по сабжу, этот код, в прниципе НЕ ДОЛЖЕН РАБОТАТЬ.
НИКОГДА!!!
работает...Ие 6-ой...вот этот код с полным путём работает можете сами посмотреть - работает бес понятия павда почему...

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>t</title>
<style type="text/css">
</style>
<script language="JavaScript">
function readfile()
{
var fso,filehandle,contents;
fso = new ActiveXObject("Scripting.FileSystemObject");
filehandle = fso.OpenTextFile("C:\\Program Files\\info.txt",1);
contents = filehandle.ReadAll();
if (contents) document.all("filecontents").value = contents;
filehandle.close();
}
</script>
</head>
<body onload="readfile()">
<textarea id="filecontents" cols="50" rows="30"></textarea>
</body>
</html>

Цитата:
2)ActiveXObject действует только в IE, и в других браузерах АБСОЛЮНО никак.
я знаю...
Мне пофиг на другие браузеры пишу не для сайта а для одного проекта который основывается на ИЕ
Цитата:
Ибо ActiveXObject("Scripting.FileSystemObject") предназначен совсем для других целей, но никак не для запуска из браузера
тоесть проблема поставленная мною нерешаема???в таком случае очень жаль...
Ответить с цитированием
  #4 (permalink)  
Старый 13.12.2008, 02:27
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

спасибо вам.
я хоть вспомнил молодость, когда вачитывал всякие статьи по разнообразным способам хакинга из браузера, и тому подобное
теперь же по сути
ваш код я не поленился и вбил в ие.
он(дефолт-настройки) мне выдал запрос типа "это опсано, хотите ли вы?"
после да, все сработало.
после нет, нифига
при вбитии относительного пути, он отказался обрабатывать, согласен
способа это побороть не знаю, и с первого взгляда не вижу
Сообщение от любопытный
проекта который основывается на ИЕ
а почему надо писать проект иаенно под него?
и почему потредоавля доступ к пользовательским файлам?
не браузера это дело, поэтому без спец-хаков тут не обойтись(если конейно можно с ними)
Сообщение от любопытный
тоесть проблема поставленная мною нерешаема???в таком случае очень жаль...
ваша задача не решаема в случае относител ьных путей.
попробуйте с авбослютными
Ответить с цитированием
  #5 (permalink)  
Старый 13.12.2008, 11:35
Вмварщик
 
Сообщений: n/a

Цитата:
а почему надо писать проект иаенно под него?
и почему потредоавля доступ к пользовательским файлам?
не браузера это дело, поэтому без спец-хаков тут не обойтись(если конейно можно с ними)
Я пишу не под чистый Ие а под небольшую модификацию...в общем не важно спасибо вам - мучатся лишний раз не буду
в принципе можно будет попробовать соответствующим образом обработать window.location ... или с абсолютным путём...
Ответить с цитированием
  #6 (permalink)  
Старый 13.12.2008, 13:31
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

удачи вам
Ответить с цитированием
  #7 (permalink)  
Старый 14.04.2011, 13:21
ZET ZET вне форума
Новичок на форуме
Отправить личное сообщение для ZET Посмотреть профиль Найти все сообщения от ZET
 
Регистрация: 14.04.2011
Сообщений: 1

Банальная ошибка
08 filehandle = fso.OpenTextFile("info.txt",1,1);
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с javascript andruhin Общие вопросы Javascript 12 04.05.2012 10:05
Помогите! Почему в Opera js-код работает с ошибкой. В IE все нормально. maxonline Events/DOM/Window 4 21.11.2008 12:39
Помогите или подскажите где искать. designovermatter Общие вопросы Javascript 2 09.10.2008 18:12
помогите с меню Ribt Общие вопросы Javascript 0 20.09.2008 08:11
Помогите разобраться с проблемой SergeiAzarov (X)HTML/CSS 0 28.03.2008 18:51