Chào các bạn. Mình mới lập trình C++. Do trước đây mình lập trình vi điều khiển bằng C nên giờ làm bằng máy tính trên C++ có vài lỗi mình chưa biết cách khắc phục. Mình có tạo một khung dữ liệu truyền qua cổng COM máy tính. Đoạn code truyền dữ liệu của mình như sau:
void writeByte(char speed)
{
array<Byte>^TxBfr = gcnew array<Byte>(7);
TxBfr[0] = 1;
TxBfr[1] = speed;
for (int i = 2; i < 7; i ++)
{
TxBfr[i] = 0;
}
DWORD bytes_written, total_bytes_written = 0;
fprintf(stderr, "Sending bytes...");
if(!WriteFile(hSerial, TxBfr,6, &bytes_written, NULL))
{
fprintf(stderr, "Error\n");
}
}
Khi biên dịch thì xuất hiện lỗi sau: C2664: ‘WriteFile’ : cannot convert parameter 2 from ‘cli::array ^’ to ‘LPVOID’.
Mong các bạn chỉ hướng mình khắc phục.
Cảm ơn các bạn giúp đỡ.


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?