問題タブ [intptr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3526 参照

c# - プリンターの DEVMODE を変更できない

DEVMODE標準およびデバイス固有の設定を渡すために、現在の印刷タスクのプリンターを変更する必要があります。私は次のことを行います:

意味のあるエラー情報なしで実行しようとPrinterSettings.SetHdevmodeすると失敗します。null でない場合、メソッド内で例外がスローされます。 だから私の質問は:何が間違っているのですか?キャストするのは間違っていますか?たぶん、配列以外のものを期待していますか?NullReferenceExceptiond.PrinterSettingsPrinterSettings.SetHdevmode
byte[]IntPtrSetHdevmodebyte[]

byte[] devmode_dataレジストリから配列を取得します。これは有効な値であり、現在のプリンター設定で使用されている値と同じです。

0 投票する
1 に答える
1710 参照

c# - フォローアップ: WPF でウィンドウを最前面に持ってくる

現在のプロジェクトにボタンを追加しようとしています。このボタンを押すと、ウィンドウが x 秒間背面に移動し、ユーザーが他のウィンドウで作業できるようになり、自動的に前面に戻ります。組み合わせて WPF ウィンドウを背面に送信する方法は? WPF でウィンドウを前面に移動し、BackgroundWorker とともに、この 99% を完了することができました。ボタンが押されると、ウィンドウは背面に移動し、指定された秒数後に戻ります。問題は、別のウィンドウ (Opera、Word など) に移動すると、後ろから戻らないことです。フラグで遊んでみましたが、うまくいかないようです。これは可能ですか?もしそうなら、どのように?

ありがとう!

0 投票する
1 に答える
12373 参照

c - エラー: 不明な型名 'intptr_t'

MinGW で C プログラムをコンパイルしているときに、このエラーが表示されます。私の知る限り、'intptr_t' は C99 標準の型だと思っていました。ファイルを含めていませんか?

0 投票する
4 に答える
1232 参照

c# - P/呼び出します。C#からマーシャリングしてアンマネージメソッドを呼び出す方法は?

P/Invoke に問題があります。C# コードから .dll (C++ で実装) を呼び出しています。次のメソッドを含むクラスがあります。

AudioFileListクラスは次のようになります。

問題は、メソッドを呼び出して、C# コードからCreateAudioFileList 結果を渡す方法です。DisposeAudioFileListありがとう!

0 投票する
2 に答える
277 参照

com - IntPtr と COM の As Any

C# と VBScript で動作する COM オブジェクトを開発しています。また、32 ビットと 64 ビットをサポートする必要があります。

私が抱えている問題は、ポインターにあります。私の .IDL の一部を参照してください

PTRTYPE を void* として宣言すると、c# はそれらを IntPtr と見なし、VB6/VBScript はそれらを "As Any" と見なします。

このアプローチの問題は、「Any」型パラメーターを使用した単純なポインター計算を実行できないことです。

PTRTYPE を long (および 64 ビットで「ハイパー」) として宣言すると、ポインター演算を実行できるようになりますが、C# では、32/64 ビット プラットフォームに応じて、同じメソッドに対して 2 つの異なる定義があります。

VARIANT を PTRTYPE 型として使用することは避けたいと思います。

C# と VBScript の両方と互換性を持たせる方法はありますか?

前もってありがとう、マウロ。

0 投票する
1 に答える
95 参照

wpf - FilterMessageを停止してさらに先に進むにはどうすればよいですか?

メッセージを停止してさらに先に進む方法、つまりメッセージを処理する方法を見つけることを楽しみにしています。

たとえば、カーソルの位置はテキストボックスにあり、バーコード「#Save#」をスキャンしています。WindowProcを使用して、これがバーコードテキストであることを認識し、(フォームを保存して)テキストの保存を処理しましたが、このテキスト( "#Save#")をテキストボックスに書き込みたくありません。

したがって、短い文で、このテキスト(入力)が処理されるウィンドウを言うためのプロパティまたはメソッドを探しています。それ以上のアクションは実行しないでください。

0 投票する
2 に答える
33739 参照

c - void* の代わりに intptr_t を使用していますか?

intptr_tの代わりに汎用ストレージ (ポインターと整数値を保持するため) として使用することをお勧めしますvoid*か? (ここで見られるように: http://www.crystalspace3d.org/docs/online/manual/Api1_005f0-64_002dBit-Portability-Changes.html )

私がすでに読んだことについて:

  • int-> void*->intラウンドトリップは元の値を保持するとは限りません。私は推測するint-> intptr_t->intするだろう
  • 両方のポインター演算void*intptr_tキャストが必要なため、ここでは利点がありません
  • void*ポインタを格納するときの明示的なキャストが少ないことをintptr_t意味し、整数値を格納するときのキャストが少ないことを意味します
  • intptr_tC99が必要

他に何を考慮する必要がありますか?

0 投票する
2 に答える
13575 参照

c# - byte[] 配列を IntPtr に変換するには?

重複の可能性:
C# で byte[] から IntPtr を取得する方法

私はメモリから文字列を読んでいます

そして、この配列を文字列に変換しています。

プログラムのメモリ内のアドレス 003A53D4 の下に、文字列を指すポインターがあるため、問題が発生しました。文字列のアドレスを取得するにはどうすればよいですか? ありがとう :)

それは私が試したことです:

それは言います(約4行目):

値を null にすることはできません。パラメータ名: 宛先

new IntPtr() を new IntPtr(1)に変更 すると、

保護されたメモリを読み書きしようとしました。これは多くの場合、他のメモリが破損していることを示しています。

0 投票する
1 に答える
2239 参照

c# - IntPtrが指すメモリのコンテンツをC#のMemoryStream変数に送信します

このlanguajeは初めてです。

質問は非常に明確だと思います。dll関数を呼び出した後にintptrを受信し、それが指すバッファーをMemoryStream変数に保存する必要があります。どうすればいいのですか ?

0 投票する
2 に答える
42014 参照

c# - ウィンドウの位置を取得するには?

プロセスのウィンドウ位置を取得する方法を知りたいです。私はインターネットでそれを探していましたが、結果はありませんでした。ありがとう :)