首先,请原谅我,如果我说些傻话,我不是电脑工程师,但我已被分配到需要更多技能的东西.
我需要在SD卡中写入和读取物理扇区.我用C++完成了它,但主要的应用程序是用C#编写的,所以我认为这是编写我的第一个dll的好时机.
这是用于编写扇区的c ++代码.
private: System::Void button4_Click(System::Object^ sender, System::EventArgs^ e) {
HANDLE hFile = INVALID_HANDLE_VALUE;
BOOL fSuccess = FALSE;
DWORD dwBytesWritten = 0;
unsigned char chBuffer[SIZE];
long SectorActual = 39;
long PosicionInicio = SectorActual * 512;
for (int i=0; i<SIZE; i++) // Garbage values to be written
{
chBuffer[i]= i % 16;
if((i/16)%2==0)
{
chBuffer[i]= 15 - chBuffer[i];
}
}
hFile = CreateFileA("\\\\.\\PhysicalDrive5",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
textBox1->Text += "Could not open file (error " + GetLastError() + ") …Run Code Online (Sandbox Code Playgroud)