Q : Como e que eu recolho/dispacho os atributos da posse de nível dos ficheiros /directoria dentro do sistema de ficheiros virtuais do RaidenFTPD?

audiências de alvo: Autores de software certificados do RaidenFTPD/programadores

R : O FTP SERVER RaidenFTPD pode segurar a posse nivelada os ficheiros que não podem ser encontrados fàcilmente em outros produtos de FTPD para Windows, porém não e fácil obter estas informacoes externas por certificados de 3 partido, e nós agora estamos contentes de oferecer este controle do RaidenModeX active-X aos autores dos certificados do ftp GRATIS!

Step1 : downloade o controle RaidenModeX Active-X daqui here

Step2 : Installacão

Extrair o ModeX.zip dentro de uma directoria (pode ser o directorio do seu projecto com localidade fixa ) e registre o componente, escreva

regsvr32 RaidenModeX.ocx

numa consola de comandos

Step3 : Abra o seu projecto ,inserta este active-X dentro do seu projecto

Examplo para o Microsoft Visual C++

1.Abra o ficheiro do seu projecto

2.Escolha um qualquer dos dialogos de resursos, e carregue no butao direito do rato->insert activex control

3.Econtre o controle RaidenModeX e carregue no butão OK

4.Sob o mesmo recurso do diálogo, tecle no butao direito do rato, e lance Class wizard

5.Carregue na aba das variáveis membras e , encontre a identificação do controle IDC_RAIDENMODEXCTRL1 ,e carregue no butão Add variable

6.Agora o MSVC lhe ira perguntar se voce deseja criar a C++ Wrapper classpara ele,escolha YES

7.Quando o dialogo de adderir as variaveis membras aparecer, escreva um nome apropriado , assim como m_modex

8.Agora diriga-se ao ficheiro de fonte e includa o ficheiro RaidenModeX.h que esta incluido

9.Suposto que voce exportou este controle com o nome de m_modex (isto e o seu trabalho)

10.E se voce tem um ficheiro chamado xxx.zip , sob e:\temp , e foi uploaded via o sistema RaidenFTPD, deve de existir um ficheiro .raidenftpd.acl sob E:\temp

11.To get the information of this file , simply use the component's method 'SetFilePath'

BOOL CRaidenModeX::SetFilePath(LPCTSTR fullpath)

parameter :

LPCTSTR fullpath : full path name of the file you want the active-x to get information for you , String type

return value :

TRUE if the active-x can find an entry in the .raidenftpd.acl file for the specified file , FALSE if not

ex:

m_modex.SetFilePath("i:\\temp\\xxx.zip");

 

12.Depois voce pode chamar este metodo, a seguinte propriedade se torna disponivel

file owner , file group , file mode , free file , complete file

however you will need to use the following method to retrieve them

GetOwner(); // get the owner name of the file
GetGroup(); // get the group name of the file
GetMode(); // get the permission mode of the file (000-777)
GetFree(); // 0=count credit file , 1=free file
GetComplete(); // 0=not complete or unknown , 1=complete file (passed sfv or zip checking)
GetErrormsg(); // get error message

note : all return values are string type

13.Para disponir a informacao de um ficheiro / directoria simplesmente utilize o metodo 'Chmod' do componente

long Chmod(LPCTSTR mode, LPCTSTR uname, LPCTSTR gname, LPCTSTR fullpath, short complete, short free)

parameter :

LPCTSTR mode : 000-777 , refer to this page for more info

LPCTSTR uname : 1-10 characters , the username , should not contain space character

LPCTSTR gname : 1-10 characters , the group name , should not contain space character

LPCTSTR fullpath : full path name of the file you want the active-x to set information for you , String type , wildcard in filename is allowed

short complete : 0 or 1 , if the file is tagged as complete or good file

short free : 0 or 1 , if this file will be freely downloadable by everyone without credit

return value :

always 0

ex:

m_modex.Chmod("755","john","admin","c:\temp\*.zip",1,1);

 

14.Note to the Visual Basic Users

1. Adderir OCX como componente e coloque na forma.

2. Inicie o metodo SetFilePath(path\file) .

3. Se o resultado for verdade para , owner, group, complete, free, mode, errormsg significa que as propriedades ja estão renovadas (nao precissa de inicias outro GETXXX() ).

Chamando esse metodo secundario foi o que me confundio .Parece que nao e necessario fazer isso no VB desde que as propriedades sao preenchidas automaticamente se o resultado for verdadeiro.

 

Atencão : Acordos De Licença

Licenciando o controle de RaidenModeX activeX para a distribuição
=============================================================================

O controle de RaidenModeX activeX

O pacote do controle de RaidenModeX activeX permite que você inclua RaidenModeX.ocx em suas aplicações 32-bit de Windows, e distribuir estas aplicações royalty-livres se as seguintes exigências forem satisfeitas

1:Você pode somente distribui-lo com todos os pacotes de software que suporta RaidenFTPD, não including pacotes do FTP SERVER

2.Você deve notificar a equipe de RaidenFTPD antes que você distribua este controle de activex

3.Você deve pôr uma observação de copyright para este componente no seu readme ou na página acerca do software.

proprietário do copyright: (C) Equipe de RaidenFTPD, 2002

4.Absolutamente nenhuma garantia, se você a usar ou a distribuir com seu pacote de software, você concorda usá-lo com seu próprio risco

E é TUDO

 

Copyright © RaidenFTPD TEAM , ALL RIGHTS RESERVED

REVISION 2.2 , 2002/04/26