/// <summary> /// DTX2WAVにメッセージを送信する /// </summary> /// <param name="strSend">送信するテキスト</param> public void SendMessage2DTX2WAV(string strSend) { for (int i = 0; i < 5; i++) // 検索結果のハンドルがZeroになることがあるので、200ms間隔で5回リトライする { hCurrentMainWindowHandle = Process.GetCurrentProcess().MainWindowHandle; if (hTargetMainWindowHandle == IntPtr.Zero) { //Trace.TraceInformation("ハンドル創作"); #region [ 既に起動中のDTX2WAV(の録音中ダイアログ)プロセスを検索する。] Process[] running = Process.GetProcesses(); foreach (Process p in running) { //Trace.TraceInformation("WindowTitle: " + p.MainWindowTitle); if (p.MainWindowHandle != IntPtr.Zero && p.MainWindowTitle.Contains("DTX2WAV Rel")) { //Trace.TraceInformation("WindowTitle: " + p.MainWindowTitle); hTargetMainWindowHandle = p.MainWindowHandle; break; } } #endregion } #region [ 起動中のDTXManiaがいれば、そのプロセスにコマンドラインを投げる ] if (hTargetMainWindowHandle != null && strSend != null) { CSendMessage.sendmessage(hTargetMainWindowHandle, hCurrentMainWindowHandle, strSend); //Trace.TraceInformation("SendToDTX2WAV: " + strSend + ", " + hTargetMainWindowHandle + ", " + hCurrentMainWindowHandle); return; } #endregion else { Trace.TraceInformation("メッセージ送信先のプロセスが見つからず。5回リトライします。"); Thread.Sleep(200); } } }
public ClientSendDataMgr() { m_SendThread = null; m_SendDataList = new ArrayList(); m_Singleton = this; m_LoginSend = new CLoginSend(m_Singleton); m_GmSend = new CGMSend(m_Singleton); m_ItemSend = new CItemSend(m_Singleton); m_BuffSend = new CBuffSend(m_Singleton); m_MapSend = new CMapSend(m_Singleton); m_MailSend = new CMailSend(m_Singleton); m_ShopSend = new CShopSend(m_Singleton); m_HeroSkillSend = new CHeroSkillSend(m_Singleton); // m_RedisSend = new CRedisSend(m_Singleton); m_HeroSend = new CHeroSend(m_Singleton); m_RoleSend = new CRoleSend(m_Singleton); m_LotterySend = new CLotterySend(m_Singleton); m_AactionPointSend = new CActionPointSend(m_Singleton); m_GoldHandSend = new CGoldHandSend(m_Singleton); m_LotterHotSend = new CLotterHotSend(m_Singleton); m_ChatSend = new CChatSend(m_Singleton); m_BattleSend = new CBattleSend(m_Singleton); m_MobaSend = new CMobaSend(m_Singleton); m_RankLisrSend = new CRankListSend(m_Singleton); m_FriendSend = new CFriendSend(m_Singleton); m_TaskSend = new CTaskSend(m_Singleton); m_GetEnergySend = new CGetEnergySend(m_Singleton); m_UISign_inSend = new UISign_inSend(m_Singleton); m_TitleSend = new CTitleSend(m_Singleton); m_EveryDailyTaskSend = new CEveryDailyTaskSend(m_Singleton); m_NewplayerRewardSend = new CNewplayerRewardSend(m_Singleton); m_WalkSend = new WalkSend(m_Singleton); m_SocietySend = new CSocietySend(m_Singleton); m_GuideSend = new CGuideSend(m_Singleton); m_PetSend = new CPetSend(m_Singleton); m_SendMessage = new CSendMessage(m_Singleton); }