안녕하세요 모든 사람이이 오류가 C#을 로 작성 내 응용 프로그램을 디버깅에 오류가있어 : 할당되지 않은 지역 변수의사용은 "SHELLEXECUTEINFO"
사용 "SHELLEXECUTEINFO"
가 본 인 오류 줄 cbSize = Marshal.SizeOf (sHELLEXECUTEINFO),
나는이 오류가 발생하는 이유 또는 해결 방법을 알지 못합니다.
private bool PWOLaunch(int iTab)
{
string pWOLocation = Settings.Default.PWOLocation;
if (!File.Exists(pWOLocation))
{
this.openFileDialog1.ShowDialog();
pWOLocation = this.openFileDialog1.FileName;
if (!pWOLocation.Contains("PWO.exe"))
{
MessageBox.Show("Failed to Locate file: PWO.exe\nThis bot is only for Pokemon World Online!");
return false;
}
if (pWOLocation.Contains("PWO.exe"))
{
Settings.Default.PWOLocation = pWOLocation;
Settings.Default.Save();
}
}
Form1.PROCESS_INFORMATION pROCESSINFORMATION = new Form1.PROCESS_INFORMATION();
Form1.STARTUPINFO sTARTUPINFO = new Form1.STARTUPINFO();
Form1.SECURITY_ATTRIBUTES sECURITYATTRIBUTE = new Form1.SECURITY_ATTRIBUTES();
Form1.SECURITY_ATTRIBUTES sECURITYATTRIBUTE1 = new Form1.SECURITY_ATTRIBUTES();
Form1.SHELLEXECUTEINFO sHELLEXECUTEINFO = new Form1.SHELLEXECUTEINFO()
{
cbSize = Marshal.SizeOf(sHELLEXECUTEINFO),
lpFile = pWOLocation,
nShow = 1,
lpVerb = "runas",
fMask = 64
};
if (!Form1.CreateProcess(pWOLocation, null, ref sECURITYATTRIBUTE, ref sECURITYATTRIBUTE1, false, 32, IntPtr.Zero, null, ref sTARTUPINFO, out pROCESSINFORMATION))
{
MessageBox.Show("Failed to Launch file: PWO.exe");
return false;
}
StringBuilder stringBuilder = new StringBuilder("ThunderRT6FormDC");
IntPtr zero = IntPtr.Zero;
while (zero == IntPtr.Zero)
{
zero = this.FindProcessWindow(stringBuilder, pROCESSINFORMATION.dwProcessId);
}
if (!this.EmbedGame(zero, iTab))
{
MessageBox.Show("Failed to launch game into bot");
}
this.gameWindowHandles[iTab] = zero;
this.gameProcesshandles[iTab] = pROCESSINFORMATION.dwProcessId;
this.gameBotHandles[iTab] = IntPtr.Zero;
this.gameLogHandles[iTab] = IntPtr.Zero;
Form1.ShowWindow(this.gameWindowHandles[1], 0);
this.launchAllToolStripMenuItem.Text = "Restart Game";
return true;
}
나쁜 게재에 대해 죄송합니다. 여기 새로 왔으며 질문을 편집하는 방법을 모르겠습니다 ... – user3328787
질문 아래에 '수정'버튼이 있습니다. 그런데 Stack Overflow에 오신 것을 환영합니다. 이 사이트는 [FAQ], [ask] 및 [help]를 읽기 시작할 수 있습니다. –
감사합니다. – user3328787