powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Доступ службы к сетевой папке
10 сообщений из 10, страница 1 из 1
Доступ службы к сетевой папке
    #39905436
roma1975
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

К сетевой папке доступ есть. Если из обычной программы, а не службы пробуешь использовать сетевую папку, то всё нормально работает. При работе службы с сетевой папкой возникает ошибка:

Код: c#
1.
2.
3.
4.
5.
Невозможно запустить службу. System.ArgumentException: Имя папки \\192.10.102.100\Users\Roman\Roma\F1 не допускается.
   в System.IO.FileSystemWatcher..ctor(String path, String filter)
   в System.IO.FileSystemWatcher..ctor(String path)
   в WindowsService1.Service1.Logger..ctor() в C:\Roma\Glory\WindowsService1\WindowsService1\Service1.cs:строка 53
   в WindowsService1.Service1.OnStart(String[] args) в C:\Roma\Glory\WindowsService1\WindowsService1\Service1.cs:строка 29



Домена нет. Пробовал использовать класс using ( new Impersonator( "myUsername", "myDomainname", "myPassword" ) ) - он не помог. Что можно сделать?
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905455
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma1975,
запусти службу от той учетной записи, у которой есть доступ к сетевой папке(не через имперсонатор, а через параметры запуска службы).
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905517
roma1975
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да пробовал запускать службу от той учетной записи, у которой есть доступ к сетевой папке(не через имперсонатор, а через параметры запуска службы). Тоже самое не работает.
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905527
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma1975,
Если ты используешь путь к папке как строку, то там по моему нужно задваивать кавычки. ТО есть твой путь должен быть
Код: c#
1.
string path="\\\\192.10.102.100\\Users\\Roman\\Roma\\F1"


Ну и проверь еще, нужно ли закрывать последнюю кавычку.
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905535
roma1975
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да я так и пишу сетевой путь и в конце проверил ставить ничего не надо. Так не работает .
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905542
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma1975
Да пробовал запускать службу от той учетной записи, у которой есть доступ к сетевой папке(не через имперсонатор, а через параметры запуска службы). Тоже самое не работает.

Что не работает? Домена нет, а сервис как-то стартовал...
WNetAddConnection2
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905561
roma1975
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервис не стартует из-за ошибки о которой я писал. Если поставить локальную папку сервис запускается( всё нормально).
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905572
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roma1975,
Код: 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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
        [StructLayout(LayoutKind.Sequential)]
        public struct Netresource
        {
            public int dwScope;
            public int dwType;
            public int dwDisplayType;
            public int dwUsage;
            public string lpLocalName;
            public string lpRemoteName;
            public string lpComment;
            public string lpProvider;
        }

        public enum ResourceScope : int
        {
            Connected = 1,
            GlobalNetwork,
            Remembered,
            Recent,
            Context
        };

        public enum ResourceType : int
        {
            Any = 0,
            Disk = 1,
            Print = 2,
            Reserved = 8,
        }

        public enum ResourceDisplaytype : int
        {
            Generic = 0x0,
            Domain = 0x01,
            Server = 0x02,
            Share = 0x03,
            File = 0x04,
            Group = 0x05,
            Network = 0x06,
            Root = 0x07,
            Shareadmin = 0x08,
            Directory = 0x09,
            Tree = 0x0a,
            Ndscontainer = 0x0b
        }


        [DllImport("mpr.dll")]
        private static extern int WNetAddConnection2
            (
            [MarshalAs(UnmanagedType.Struct)] ref Netresource lpNetResource,
            string lpPassword,
            string lpUserName,
            int dwFlags
            );

        [DllImport("mpr.dll")]
        private static extern int WNetCancelConnection2
            (
            string lpName,
            int dwFlags,
            bool fForce
            );

/*
            //

            var netResource = new Netresource
                                  {
                                      lpLocalName = null,
                                      lpProvider = null,
                                      dwType = (int) ResourceType.Any,
                                      dwDisplayType = (int) ResourceDisplaytype.Share,
                                      lpRemoteName = uncPath
                                  };

            int errCode = WNetAddConnection2(ref netResource, remotePassword, remoteUser, 0);

            if (0 != errCode)
            {
                Console.WriteLine("Error: {0}", (new Win32Exception(errCode)).Message );
                return;
            }

            // do some work

            WNetCancelConnection2(netResource.lpRemoteName, 0, true);


*/

...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905613
eliseylapt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
roma1975,
Попробуйте поставить @
var path = @"\\123.213...
...
Рейтинг: 0 / 0
Доступ службы к сетевой папке
    #39905910
roma1975
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Использовал WNetAddConnection2 и получилось.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Доступ службы к сетевой папке
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]