Como eliminar o requisito de bloquear arquivos que são executados?

0

Eu tenho um aplicativo que é colocado em seu servidor dedicado. Tem estrutura capaz de plug-in. Foi imaginado como soft que tem alguns recursos de aplicativos da web, como a capacidade de substituir seus módulos "on-the-fly", enquanto outros usuários têm este aplicativo lançado em seu espaço de usuário.

Para implementar esse recurso, criei um único iniciador com vários plug-ins e coloquei-o na pasta compartilhada. Deixe ser C:\App . Existe EXE chamado MultiPlug2.exe e todos os plugins são colocados em C:\App\Plugins e têm .bpl extension (sim, o bom e velho Delphi XE2 é usado como IDE, e eu odeio o dia em que decidi usá-lo). O lançador é Start.cmd , que verifica se o usuário atual tem a pasta %USERPROFILE%\App e o cria, se não tiver. Em seguida, ele cria links simbólicos para cada EXE e BPL (por exemplo, mklink linkname target e eu permiti a criação de links simbólicos nas políticas do servidor) nessas pastas. Então começa %USERPROFILE%\App\MultiPlug2.exe .

Após o lançamento, por um tempo, posso manipular arquivos em pastas de destino, especialmente excluir e substituí-los, mas logo eles ficam bloqueados como se eu estivesse lançando MultiPlug2 diretamente da pasta em que se encontra. Como posso impedir o bloqueio deles?

    
por Danatela 23.04.2015 / 08:21

1 resposta

0

Esses arquivos estão em %USERPROFILE%\App apenas um link simbólico para os que estão em C:\App ? Em caso afirmativo, os usuários estão, na verdade, executando-o diretamente da pasta original. Um link simbólico não é uma cópia do arquivo original, é o arquivo original.

    
por 24.04.2015 / 01:21