0

明らかに、メインウィンドウが非表示になっている(「トレイに最小化されている」)場合、特定のプロセスを終了することはできません。そこで、他のプロセスのFormClosingハンドラーでウィンドウを再度表示してみました。どちらも動作しませんでした。

今、ShowWindowを使いたい

IntPtr Handle = Gateway->MainWindowHandle;
ShowWindow((HWND)Handle.ToPointer(), SW_SHOWDEFAULT);

残念ながら、これは

error LNK2028: Nicht aufgelöstes Token (0A000072) ""extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z)", auf das in Funktion ""private: void __clrcall lidarctrl::Form1::Form1_FormClosing(class System::Object ^,class System::Windows::Forms::FormClosingEventArgs ^)" (?Form1_FormClosing@Form1@lidarctrl@@$$FA$AAMXP$AAVObject@System@@P$AAVFormClosingEventArgs@Forms@Windows@4@@Z)" verwiesen wird.
error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z)" in Funktion ""private: void __clrcall lidarctrl::Form1::Form1_FormClosing(class System::Object ^,class System::Windows::Forms::FormClosingEventArgs ^)" (?Form1_FormClosing@Form1@lidarctrl@@$$FA$AAMXP$AAVObject@System@@P$AAVFormClosingEventArgs@Forms@Windows@4@@Z)".

申し訳ありません-ドイツ語のエラー。コンパイラのロケールを変更する方法がわかりません。

Non resolved Token...in function...referenced by...

Reference to non-resolved extern symbol...in function...

どのヘッダーを含めるか、ライブラリをロードするかについてのヒントをいただければ幸いです。

私はMicrosoftVisualC ++2010Expressを使用しています。プロジェクトはプレーンなWindowsフォームアプリケーションです。

ありがとうございました!

4

2 に答える 2

1

標準の Windows フォーム アプリケーション テンプレートから作成されたプロジェクトでは、ネイティブ プロジェクトに通常含まれる標準/既定のライブラリがリンクされていません。また、プロジェクト設定またはコードで明示的に追加する必要があります。を含める場合は、次のよう<windows.h>に追加#pragmaします。

#define WIN32_LEAN_AND_MEAN
#include <windows.h>

#pragma comment(lib, "user32.lib") // <<--- Add Me

これにより、不足している がリンクされますShowWindow

于 2012-10-16T16:53:45.377 に答える
0

C++ と Win32 を使用していない可能性があります。それからあなたは書くでしょう

#include <windows.h>
//...
{
  //...
  HWND Handle = Gateway->MainWindowHandle; // Gateway probably is your class.
  ShowWindow(Handle, SW_SHOWDEFAULT);
}
于 2012-10-16T11:48:47.710 に答える