Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2008, 15:44   #11
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

В общем вот такая схема работает. Сорри, что C/C++
Код:
#include <windows.h>
#include <string>

#pragma comment (lib, "mpr.lib")

using std :: wstring;

const wchar_t wszHostName[] = L"<COMPUTER_NAME>";
const wchar_t wszDllName[] = L"SHELL32.DLL";

int main()
{
	HANDLE			hDll;
	NETRESOURCEW	nrw;
	wstring			wstrSharePath	= wstring(L"\\\\") + wszHostName + L"\\C$\\TEST_DIR";
	wstring			wstrDllPath		= wstrSharePath + L"\\" + wszDllName;
	

	RtlZeroMemory(&nrw, sizeof nrw);

	nrw.lpRemoteName	= (LPWSTR)wstrSharePath.data();
	nrw.dwType			= RESOURCETYPE_DISK;
	nrw.dwScope			= RESOURCE_GLOBALNET;

	if (NO_ERROR == WNetAddConnection2W(&nrw, L"TEST_PASSWORD", L"TEST_USER", 0)) {
		hDll = LoadLibraryExW(wstrDllPath.data(), NULL, LOAD_LIBRARY_AS_DATAFILE);
		/**************************************************\
		


		\**************************************************/
		FreeLibrary((HMODULE)hDll);
		WNetCancelConnection2W((LPWSTR)wstrSharePath.data(), 0, TRUE);
	}

	return 0;
}
Всё время "между звёздочками" dll-ка висит в памяти.
Недостатки: Пока сетевой путь открыт к нему (хотя его и "не видно") есть доступ того юзера, от имени которого запущен процесс. В принципе с этим можно справиться запустив "рабочий" процесс под другой записью, а если на локальной машине есть аккаунт, имеющий доступ к этой библиотеке "там", то просто от его имени, тогда не понадобится вся эта чехарда с WNetAddConnection2.
B_N вне форума Ответить с цитированием
Старый 09.05.2008, 02:40   #12
Баламут
Баламучу слегка...
Участник клуба
 
Аватар для Баламут
 
Регистрация: 01.11.2006
Сообщений: 1,585
По умолчанию

Цитата:
Сообщение от B_N Посмотреть сообщение
Сорри, что C/C++
Ты же знаешь, я справлюсь... В общем съезжу на парад Победы и буду пробовать. Спасибо. Всех с праздником!
Баламут вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подключение к удаленной БД(MySQL) и работа с ней! IIpopoK БД в Delphi 2 29.12.2010 21:31
Connect с удаленной базой MySQL _SERGEYX_ БД в Delphi 1 26.08.2008 14:06
Виртуальные машины! Marsik Софт 17 23.04.2008 20:33
интерпретатор команд стековой машины AntohaN Помощь студентам 2 05.09.2007 20:04
Для удаленной работы требуется программист TOKKo Фриланс 2 21.12.2006 16:12