Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Con la quattordicesima generazione Lenovo ridisegna il suo ThinkPad più iconico attorno al nuovo Space Frame e ai processori Intel Core Ultra Series 3. Resta sotto 1Kg, è molto più semplice da riparare e si rivolge al professionista che lavora in mobilità, con un prezzo da prodotto di vertice.
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Le Jabra Evolve3 85 non sono semplicemente cuffie Bluetooth con cancellazione del rumore. Sono un dispositivo professionale pensato per chi trascorre gran parte della giornata in riunione, al telefono o davanti a un assistente basato sull'intelligenza artificiale
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-05-2010, 12:08   #1
Dani88
Senior Member
 
L'Avatar di Dani88
 
Iscritto dal: Aug 2005
Città: Genova
Messaggi: 2285
[.NET] Librerie per l'accesso a partizioni, mbr, flag di boot, ecc...

Dopo aver tentato di fare in Java un programma che renda botabili le chiavette USB con alcune feauture aggiuntive sono giunto alla conclusione, anche grazie al vostro aiuto che Java non è adatto per tale compito.
Ho deciso dunque di vedere se riesco con .NET.
Chiedo allora a voi: sapete se vi sono librerie (ufficiali o meno) che permettano:
- creazione di partizioni
- settaggio dei flag delle partizioni
- modifica del MBR
- ecc...
Sto cercando in giro ma per il momento non riesco a trovare nulla di utile.
Ho letto che per rendere la partizione avviabile occorre settarla attiva con boot flag settato (mi pare sia il valore 0x80 all'inizio della partizione), però comunque come posso fare?
Ringrazio chiunque riesca a darmi una mano
__________________
Lego ™ Fans Club
Dani88 è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2010, 00:01   #2
!k-0t1c!
Member
 
Iscritto dal: Jul 2008
Messaggi: 237
Ricerca disperata, direi.
La CLR (Common Language Runtime) opera strettamente in user mode (ring 3) e quel che vuoi fare richiede accesso esclusivo in scrittura, che puoi ottenere solo in kernel mode (ring 0).
Non troverai niente in .NET ma se scrivi (o trovi già scritto) un driver puoi creare un'interfaccia .NET che tramite chiamate P/Invoke a DeviceIoControl manda messaggi al tuo driver controllandone le azioni. Naturalmente se vuoi far qualsiasi cosa sul disco di windows la questione diventa delicatissima, preparati ad abbandonare ogni idea di .NET e, se non hai vasta esperienza in materia, preparati un'immagine Ghost perché ti risparmierà tanto tempo...
!k-0t1c! è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2010, 01:28   #3
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
Non puoi farlo in .Net nativo, ma sfruttando il concetto di path UNC messo a disposizione nelle API win32, puoi trattare ogni dispositivo di storage come fosse un file. Per integrarle nella tua applicazione .net devi utilizzare un bridge interop.
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2010, 08:26   #4
Dani88
Senior Member
 
L'Avatar di Dani88
 
Iscritto dal: Aug 2005
Città: Genova
Messaggi: 2285
Quote:
Originariamente inviato da !k-0t1c! Guarda i messaggi
Ricerca disperata, direi.
La CLR (Common Language Runtime) opera strettamente in user mode (ring 3) e quel che vuoi fare richiede accesso esclusivo in scrittura, che puoi ottenere solo in kernel mode (ring 0).
Non troverai niente in .NET ma se scrivi (o trovi già scritto) un driver puoi creare un'interfaccia .NET che tramite chiamate P/Invoke a DeviceIoControl manda messaggi al tuo driver controllandone le azioni. Naturalmente se vuoi far qualsiasi cosa sul disco di windows la questione diventa delicatissima, preparati ad abbandonare ogni idea di .NET e, se non hai vasta esperienza in materia, preparati un'immagine Ghost perché ti risparmierà tanto tempo...
Quote:
Originariamente inviato da nuovoUtente86 Guarda i messaggi
Non puoi farlo in .Net nativo, ma sfruttando il concetto di path UNC messo a disposizione nelle API win32, puoi trattare ogni dispositivo di storage come fosse un file. Per integrarle nella tua applicazione .net devi utilizzare un bridge interop.
Vi ringrazio entrambi per le risposte!
Come immaginavo non si tratta di un compito facile vedo. La mia intenzione era quella di operare su drive USB, non sui dischi di sistema (non sia mai che succede un disastro )
cambia qualcosa? Escluderei di scrivere un driver cosa di cui non sono assolutamente capace

x nuovoUtente:
Non ho capito invece moltissimo di quanto dici se le tratto come un file cosa riesco a fare?

Volevo fare un appunto inoltre:
quando ho provato con java ho tentato di agganciarmi a diskpart, tool da linea di comando di windows che opera queste feature ma da linea di comando il livello comprensione riguardante su quale disco si sta operando (sopratt per l'utente medio) è abbastanza basso e si rischia di fare casini anche grossi.
L'idea che mi è stata data è di lanciare diskpart, agganciare gli stream di I/O e usare quelli per pilotarlo da una gui più comprensibile
Ho però riscontrato problemi (con java, non so con altri linguaggi) per il sistema UAC di Vista e 7, che non fa runnare diskpart in quanto richiede privilegi di amministratore e quindi al momento di far lanciare il programma da java ottengo un'eccezione che mi dice che sono richiesti privilegi elevati.
Ora volevo sapere l'idea è applicabile con .NET?
__________________
Lego ™ Fans Club
Dani88 è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2010, 10:26   #5
!k-0t1c!
Member
 
Iscritto dal: Jul 2008
Messaggi: 237
Se tratti il drive come un file scrivi direttamente sui settori nello stesso modo che useresti per un file, quindi aperto il disco come file scriveresti direttamente all'inizio del disco.
L'operazione (astuta, non mi era venuta in mente) che ti ha suggerito nuovoUtente richiede comunque privilegi amministrativi su Vista e 7 e potrebbe essere inoltre flaggata da alcuni HIPS come maligna (anni fa ebbi l'MFT di un hard disk distrutto da un virus che usava la tecnica descritta ma poi gli HIPS sono diventati più furbi e questo comportamento oggi viene rilevato).
Comunque in C/C++ quel che ti ha suggerito nuovoUtente si fa con CreateFile, ReadFile e WriteFile. Non credo che il wrapping di queste funzioni in System.IO faccia al caso tuo, quindi preparati a usare un po' di P/Invoke
!k-0t1c! è offline   Rispondi citando il messaggio o parte di esso
Old 04-05-2010, 11:42   #6
nuovoUtente86
Senior Member
 
Iscritto dal: Mar 2007
Messaggi: 7863
ecco una serie di limitazioni introdotte in Vista/S2008/Seven che non possono essere rimosse neppure con i diritti amministrativi.
http://support.microsoft.com/kb/942448
nuovoUtente86 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
I satelliti spia russi Kosmos 2613 e Kos...
GTA VI: online la nuova mega galleria co...
Edits, l'app di Instagram, sbarca gratis...
Claude Code: il bug che ha spedito l'ema...
Perplexity lancia Teammates, gli agenti ...
Niente più datacenter? Gli eletto...
La Cina avrebbe approvato lo sviluppo de...
Epson EF-72 alla prova: Google TV, audio...
AST SpaceMobile annuncia il razzo spazia...
Apple taglia il budget AI dei dipendenti...
Fisco e intelligenza artificiale, come c...
Synology BC510 e CC410W, la videosorvegl...
600.000 chip NVIDIA fermi a Hong Kong: l...
La Cina punta tutto sull'allunaggio con ...
LG Italia compie 30 anni: gli italiani v...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v