私はwinapi関数でhello worldをやろうとしています。それは仕事の種類ですが、私はそれを適切な方法でやりたいです。WinAPI WriteConsoleでのコンソール出力
だから私はこのようなコードを持って:
int main(){
HANDLE std_out;
int i;
char *error_msg;
std_out = GetStdHandle(STD_OUTPUT_HANDLE);
if(std_out == INVALID_HANDLE_VALUE){
MessageBox(NULL,"stdout not available","Error",MB_OK);
return 1;
}
AttachConsole(ATTACH_PARENT_PROCESS);
if(!WriteConsoleA(std_out,"hhh\n",4,&i,NULL)){
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER,NULL,GetLastError(),0,&error_msg,4,NULL);
MessageBox(NULL,error_msg,"Error",MB_OK);
}
return 42;
}
はまた、私は少し実験してるので、私は/エントリにリンク:メイン/サブシステム:
:窓出力は次のように続いています
%PATH_TO_WORKING_DIR%>hhh(CRLF)
私はRETURNを押してプログラムを終了するまで待っていますが、これはおそらく非常にcrapy "hello world"に同意します。そのPWDを取り除く方法とリターンを押す必要性は、読書のための非常に歓迎されています。
おそらく 'main'の戻り値規則を読んでみたいです。 –
start.exe/yourapp.exeを使用してプログラムを起動するか、AttachConsoleではなくAllocConsoleを呼び出すか、サブシステムをコンソールに設定する必要があります。 –
@MikeKwan:それはここでは問題ではありません。 – Pyjong