Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Интернет и сети
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 08.08.2012, 17:02
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию Ошибка socket error 10013

Создал программу в делфи, запускаю все работает. (пишет в реестр, сокеты и тд).
Упаковал программой для создания инсталяторов. (Smart Install Maker, Inno Setup Compiler).
Когда устанавливаю, программа лежит в папке program files, но у нее нет прав на запись в папку program files, и доступ к сокетам выдает ошибку 10013.
Ответить с цитированием
  #2  
Старый 08.08.2012, 17:18
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от zx230
Создал программу в делфи, запускаю все работает. (пишет в реестр, сокеты и тд).
Упаковал программой для создания инсталяторов. (Smart Install Maker, Inno Setup Compiler).
Когда устанавливаю, программа лежит в папке program files, но у нее нет прав на запись в папку program files, и доступ к сокетам выдает ошибку 10013.
Программа не должна пытаться что-то писать в папку "Program Files", так как у обычного пользователя нет прав на запись в эту папку. В неё должен писать только инсталлятор, после чего она должна оставаться неизменной. (Такая вот защита от вирусов и других недобросовестных программ)
Если твоей программе нужно хранить изменяемые данные используй папку "Application Data".
Ответить с цитированием
  #3  
Старый 08.08.2012, 17:23
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

наверно так и сделаю.. а как быть с сокетами...
Ответить с цитированием
  #4  
Старый 08.08.2012, 18:30
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
WSAEACCES
10013
Permission denied.

An attempt was made to access a socket in a way forbidden by its access permissions. An example is using a broadcast address for sendto without broadcast permission being set using setsockopt(SO_BROADCAST).

Another possible reason for the WSAEACCES error is that when the bind function is called (on Windows NT 4.0 with SP4 and later), another application, service, or kernel mode driver is bound to the same address with exclusive access. Such exclusive access is a new feature of Windows NT 4.0 with SP4 and later, and is implemented by using the SO_EXCLUSIVEADDRUSE option.
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #5  
Старый 08.08.2012, 18:36
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

а какой путь решения? может есть какой то пример как правильно получить доступ к сокету?
Ответить с цитированием
  #6  
Старый 08.08.2012, 18:39
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

а какой у тебя сокет?
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #7  
Старый 08.08.2012, 18:46
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

компонент delphi TServerSocet
ServerSocket1.Port := 2012;
ServerSocket1.Open;

есть еще компонент IdHTTPServer1
Ответить с цитированием
  #8  
Старый 08.08.2012, 18:54
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

бранд отключи или с правами администратора запускай
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #9  
Старый 08.08.2012, 18:57
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

что такое бранд?
когда запускаю из делфи все работает.
не работает(ошибка 10013) когда программа устанавливается из setup.(пробовал разные установщики) даже если запускать с указанием прав администратора..
Ответить с цитированием
  #10  
Старый 08.08.2012, 19:00
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Брандмауэр Windows.
ты установщик с правами администратора запускал?
программу запусти от админа!

хотя бранд должен сам окно предупреждения выдать...
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #11  
Старый 08.08.2012, 20:31
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

все запускал с правами админстратора.. и установщик и программу. нехочет и все тут. может какие то еще версии
Ответить с цитированием
  #12  
Старый 08.08.2012, 20:43
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Службу "Защитник Windows" попробуй остановить.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #13  
Старый 08.08.2012, 21:29
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

сейчас потестил на компе с XP там все запускается. значит проблема все таки действительно с правами. но отключать службы не хочется. программу я хочу распространять.(для этого и делаю инсталлер) как простые пользователи ее будут запускать тогда.. при чем я смотрел аналогичную программу, она работает без всякого отключения служб..
Ответить с цитированием
  #14  
Старый 09.08.2012, 08:29
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

ну так можно не отключать, это просто для проверки было написано, а добавить программу в исключения брандмауэра.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #15  
Старый 09.08.2012, 10:26
zx230 zx230 вне форума
Прохожий
 
Регистрация: 08.08.2012
Сообщения: 13
Репутация: 10
По умолчанию

вообщем подключиль манифест Microsoft.VC90.CRT.manifest. вроде как заработало.. хотя хз. ) буду еще на других компах тестировать
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:51.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter