Gå til innhold

Vite at en ekstern harddisk er koblet til?


Anbefalte innlegg

Hei!

 

Det jeg da driver med, er et program som skal kopiere inn diverse filer inn på en Sony PSP. Men, filene som skal kopieres, må variere med hvilken firmware som er installert på PSP'n. Men, jeg vil gjerne få til en funksjon som gjør at programmet mitt veit at PSP'n er koblet til. (Grunnet mye egentlig, men da kan programmet stoppe og si ifra at du må ha koblet i PSP'n før det kan fortsette)

 

Det hadde også vært fint om det hadde gått an for programmet, og finne ut hvilken stasjonsbokstav PSP'n går på? (F.eks "I:")

 

 

Er det noen som veit om noen løsninger til dette? :) Hadde vært veldig bra om jeg fikk hjelp!

Lenke til kommentar
Videoannonse
Annonse

Har prøvd å sett litt på den, men det er vel egentlig ikke noe som heter System.IO.Drives? Finner bare DriveInfo, DriveType og DriveNotFoundException.

Noe som skiller seg ut ifra PSP'n, er at den alltid har to filer ved navn MSTK_PRO.IND, og MEMSTICK.IND på roten. Kanskje dette er et spor programmet kan gå ut ifra?

Lenke til kommentar
Har prøvd å sett litt på den, men det er vel egentlig ikke noe som heter System.IO.Drives? Finner bare DriveInfo, DriveType og DriveNotFoundException.

Noe som skiller seg ut ifra PSP'n, er at den alltid har to filer ved navn MSTK_PRO.IND, og MEMSTICK.IND på roten. Kanskje dette er et spor programmet kan gå ut ifra?

9007118[/snapback]

 

Det kan nok også fungere.

 

File.Exists(...)

Lenke til kommentar

Fungerer noe slikt som dette?

Dim sName As String

 

' Gå gjennom alle driver

For Each Drive As IO.DriveInfo In System.IO.DriveInfo.GetDrives

' Se om dette kan være PSP-driven (den kan fjernes (regner jeg med), men er ikke en CDRom)

    If (Drive.DriveType And IO.DriveType.CDRom) = 0 AndAlso _

      (Drive.DriveType And IO.DriveType.Removable) = 1 AndAlso _

        Drive.VolumeLabel = "[hva nå enn det er]" Then

        sName = Drive.Name ' F.eks. I:

        Exit For

    End If

Next

Lenke til kommentar
Fungerer noe slikt som dette?
Dim sName As String

 

' Gå gjennom alle driver

For Each Drive As IO.DriveInfo In System.IO.DriveInfo.GetDrives

' Se om dette kan være PSP-driven (den kan fjernes (regner jeg med), men er ikke en CDRom)

    If (Drive.DriveType And IO.DriveType.CDRom) = 0 AndAlso _

      (Drive.DriveType And IO.DriveType.Removable) = 1 AndAlso _

        Drive.VolumeLabel = "[hva nå enn det er]" Then

        sName = Drive.Name ' F.eks. I:

        Exit For

    End If

Next

9008607[/snapback]

Jeg testet den, og regnet med at jeg skal bruke en Messagebox for å hente den?

MessageBox.Show(sName)

"Variable 'sName' is used before it has been assigned a value. A null reference exception could result at runtime."

Får jeg som warning, men denne har vel ikkenoe å si..

 

Det kommer forresten en tom messagebox.

 

Også lurer jeg på denne:

Drive.VolumeLabel = "[hva nå enn det er]"

Kan det stå hva som helst der? Eller noe spesifikt?

 

Tusen takk for at dere gidder å hjelpe! :)

Lenke til kommentar
Også lurer jeg på denne:

Drive.VolumeLabel = "[hva nå enn det er]"

Kan det stå hva som helst der? Eller noe spesifikt?

 

Tusen takk for at dere gidder å hjelpe! :)

9009735[/snapback]

 

http://www.google.no/search?q=drive+label&...lient=firefox-a

 

Nestegang du spør noe så hadde det vært fint om du skrev "Jeg har prøvd å googlet dette, men finner ikke noe svar." først i innlegget ditt. Halvparten av spørsmålene dine tror jeg faktisk du hadde klart å funnet ut av selv på et par minutter, om du hadde prøvd...

Lenke til kommentar

Som med de fleste slike kodeeksempler er meningen å illustrere og ikke nødvendigvis løse problemet. Jeg har ingen Sony PSP, så jeg kan ikke si hva du trenger å søke etter, men jeg vil tro du kan finne ut mye selv ved å debugge se hvilke verdier PSP-driven er satt til.

 

Dette kan du gjøre ved å venstreklikke på margen til venstre i kodevinduet, kjøre programmet og bruke Step Over-knappen i verktøylinjen (ved siden av Kjør-knappen) til å gå videre. Bruk Locals-vinduet (Edit-verktøylinjen) for å se verdiene av variablene, evt. holde musen over dem i kodevinduet.

Lenke til kommentar

Jeg skjønte ikke heelt hva du mente med dette aadnk. Du snakker om disse breakpointsene nå? På hvilken kode skal jeg benytte dette på?

 

Og kunne dere ha svart meg på spm. som er på min forrige post? :)

 

Er veldig snilt at dere hjelper meg...! :)

Endret av AnaXyd
Lenke til kommentar
Og kunne dere ha svart meg på spm. som er på min forrige post? :)

9021796[/snapback]

 

Jeg svarte på det. Men virker ikke som du har lest svaret... :nei:

9023818[/snapback]

Også lurer jeg på denne:

 

Drive.VolumeLabel = "[hva nå enn det er]"

 

Kan det stå hva som helst der? Eller noe spesifikt?

 

Tusen takk for at dere gidder å hjelpe!

Jeg har ikke fått noe svar på denne vel? Fikk en link som jeg har sett igjennom, men mye av koden som ble oppgitt der var vanskelig å forstå. Mye av den var ikke støttet i min utgave av VB heller.

 

@aadnk

Skal jeg sette breakpoints på alle linjene liksom?

 

Sorry hvis jeg spør mye, men så er det slik at man lærer av det og da.. :)

Lenke til kommentar

Skjønte ikke så mye av det der jeg... Veit liksom ikke hva jeg skal se etter! :)

 

Men, ser ut til at det blir for vanskelig å finne ut om PSP'en er koblet til på denne måten.

 

Hvis vi allerede veit navnet på stasjonen som PSP'n er koblet til da? Blir det enklere å finne det ut da? Driver selv å prøver for harde livet nå.. :)

Lenke til kommentar

Poenget mitt var at hvis du sier ifra at du har søkt og prøv på egenhånd så er folk litt mer behjelplige. Om du faktisk prøver litt selv og starter hvert innlegg du poster med "jeg har prøvd å googlet dette selv, men finner ikke ut av det....", så får du litt mer positive svar....

 

Noe av poenget mitt er at du ikke starter innleggene dine med "Jeg har prøvd selv[,....]"....

Endret av jorn79
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...