Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C++] Creare un'unità di rete

    Vorrei realizzare in C++ una funzione che appunto
    crei delle "unità di rete"

    Ora uso uno script "Windows Script Host"
    Eccone una piccola porzione :

    [CODICE]
    function Connetti_Unita_Di_Rete() {
    var WSHShell = WScript.CreateObject("WScript.Shell");
    var WSHNetwork = WScript.CreateObject("WScript.Network")
    var FSO = new ActiveXObject("Scripting.FileSystemObject");
    var colDrives = WSHNetwork.EnumNetworkDrives();
    var timeout = 5; // 20 secondi massimo di attesa sconnessione untà.
    var time = timeout;
    var OldcolDrivesLength = colDrives.length;
    temp = "Unità di rete connesse: \r\n";
    for( t = 0; t< Unita_Di_Rete.length; t += 2) {
    if(FSO.FolderExists(Unita_Di_Rete[t+1]) ) {// Controlla se esiste la cartella remota
    //Mostra( " Unità da assegnare :>" + Unita_Di_Rete[t] +
    // "< >"+ Unita_Di_Rete[t+1]+"<", 2 );
    //Chiedi(" Trovata Unità ora la Connetto .....",3);
    Mostra( "Connessione di :\n\n"+
    ">" + Unita_Di_Rete[t] + "< >"+ Unita_Di_Rete[t+1]+"<" ,2);
    WSHNetwork.MapNetworkDrive( Unita_Di_Rete[t], Unita_Di_Rete[t+1], "false" );
    for (time = timeout; time>0 ; time--){
    if( colDrives.length == OldcolDrivesLength) {
    time = 0;
    break;
    }
    }
    } else {
    Mostra( " Attenzione :" +colDrives(i) + colDrives(i+1)+
    "\n\n Unità a confronto :" + Unita_Di_Rete[t] + Unita_Di_Rete[t+1]+
    "\n\nNon Esiste o non è accessibile !",2 );
    }
    }
    return temp;

    }
    [\CODICE]

    Ma preferirei una soluzione in C++ (sicuramente più veloce e performante),
    ma purtroppo non ho trovato esempi validi nel web.

    Qualche idea?
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Per esempio

    DWORD dwResult;
    NETRESOURCE nr;

    ZeroMemory(&nr, sizeof(nr));
    nr.dwScope= RESOURCE_GLOBALNET;
    nr.dwType = RESOURCETYPE_DISK;
    nr.dwDisplayType=RESOURCEDISPLAYTYPE_GENERIC;
    nr.dwUsage=RESOURCEUSAGE_CONNECTABLE;
    nr.lpLocalName="X:";
    nr.lpRemoteName="\\\\NOMEPC\\C$";
    nr.lpComment=NULL;
    nr.lpProvider=NULL;

    dwResult = WNetAddConnection2(&nr, (LPSTR)"password", (LPSTR)"user",CONNECT_UPDATE_PROFILE);

  3. #3
    E' proprio l'esempio che mi serviva
    Ora posso iniziare a personalizzarlo.
    Grazie oregon !
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.