誰かがこれで私を正しい方向に向けることができますか?私はウェブを無駄にループしているようです...
private: System::Void loginButton_Click(System::Object^ sender, System::EventArgs^ e) {
mLogin* lgn;
string text = marshal_as<string>(subjectName->Text);
if (lgn->login(&text) == "Master")
{
delete this;
mSockServ server;
vMaster master;
Thread^ newThread = gcnew Thread(gcnew ThreadStart(master, &vMaster::ShowDialog));
newThread->Start();
//master.ShowDialog();
server.sockInit();
}
else if (lgn->login(&text) == "Slave")
{
delete this;
vSlave slave;
mSockClnt client;
Thread^ newThread = gcnew Thread(gcnew ThreadStart(client, &mSockClnt::sockInit));
newThread->Start();
//client.sockInit(text);
slave.ShowDialog();
}
else if (lgn->login(&text) == "No")
{
MessageBox::Show("Not a valid username or password");
}
}
新しいスレッドで新しいフォームを開始して、新しいスレッドで開始したいソケットサーバーまたはクライアントと同時に実行したいだけです。ソケットもフォームも開始できないようです。これは私のエラーです:
エラー 1 エラー C3352: 'ShowDialog': 指定された関数がデリゲート型 'void (void)' と一致しません
エラー 2 エラー C3352: 'void mSockClnt::sockInit(std::string)': 指定された関数がデリゲート型 'void (void)' と一致しません
sockInit が void 型であることを確認しましたが...
ありがとうございました。