我使用连接到串口的继电器开关将摄影闪光灯组件连接到电脑。以下代码使闪光灯以4Hz闪烁10次闪烁:
#include <windows.h>
//Initialise Windows module
int WINAPI WinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil)
{
//Define the serial port precedure
HANDLE hSerial;
int freq = 4;
int iterations = 10;
int x;
for ( x = 0; x < iterations; x++)
{
//Fire the flash (open the serial port, and immediately close it)
hSerial = CreateFile("COM1",GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
CloseHandle(hSerial);
//Sleep in between flashes for specified duration
Sleep (1000/freq);
}
return 0;
}
如何在程序开头实现对话框,以便用户可以输入'freq'和'iterations'的值?
答案 0 :(得分:0)
打开Visual Studio,New,Project, Visual C ++,Windows窗体 应用。这会给你一个 GUI,你可以拖放什么 你需要。如果你没有Visual 然后工作室可能是您的IDE 类似的东西?
使这个控制台应用程序接受命令行中的数据。使用从任何其他编程语言/框架创建的GUI中的适当命令行调用应用程序。
在C#中创建GUI并使用P / Invoke调用CreateFile;这并不难。
顺便说一句,CreateFile / CloseHandle方法真的有效吗?我发现它有点“hacky”,我不确定这是最好的方法。或许另一个答案或评论也会触及这一方面。