X



WindowsDDK各種についてのスレ
■ このスレッドは過去ログ倉庫に格納されています
0518 ◆0uxK91AxII
垢版 |
2007/03/26(月) 11:27:41
>>516
やりたい事は、可能だと思う。
直前のIRP_MJ_READ応答でIoCallDriverしたIRPをcancelし、
次のIRP_MJ_READ応答でIoCompleteRequestすると良い。
コレを安全に行うには、かなり手間がかかるだろうけど、懇切丁寧に教えはしない。
つまり、>>517
0520513
垢版 |
2007/03/27(火) 17:28:03
>>517-518
ありがとう。ちょっと読んでみてます。
あと、少し質問させてください。

IRP_MJ_READ(KbdClass)のWhen Sentの説明に

The raw input thread in the Microsoft Win32 subsystem sends read requests to obtain keyboard input.

とありますが、タイミング的には、決まったタイミングではなく、常に送られてきていると考えて良いですか?


>>519
パンヤはやったことないのでよくわからないですが、
キーボードマクロ系のソフトの中身を実装してみたくなったので勉強してます。
0522513
垢版 |
2007/03/27(火) 19:24:48
まぁそうだね。出先で気になったもので。
家帰ったら確かめてみます。
0523 ◆0uxK91AxII
垢版 |
2007/03/27(火) 22:51:42
>>520
完了すれば、即座に来ると考えて良い。

>キーボードマクロ系のソフトの中身を実装
特に拘りが無いならば、SendInputでお茶を濁すという手もある。
0524513 ◆cNQcZL4DWE
垢版 |
2007/03/29(木) 01:23:03
>>523
ようやく時間ができたのでいじってみました。
「完了すれば」という意味がなんとなくわかったような…。
好きなタイミングで擬似的にキー入力を発生させたいと思ってたんですが、少し難しそうですね。

ドライバをやってみたかったので、SendInputは使わない方向でやってます。
0525デフォルトの名無しさん
垢版 |
2007/05/18(金) 23:19:25
仮想ドライブマウントの3Keyの暗号化ツール作ってみようかと思ったけどデバドラがめんどくさそう…
事故るとOSごと吹っ飛びそうだし…(´・ω・`)
RAMディスクで誤魔化すか…
0527 ◆0uxK91AxII
垢版 |
2007/05/19(土) 01:01:56
>>525
とりあえず、IFS Kit或いは相当品を使うと良い。
特定のdriveのみに処理を行うようにすれば、被害は抑えられる。
0528デフォルトの名無しさん
垢版 |
2007/05/26(土) 17:13:37
すみません32bitXPの開発ではWDKとDDKどっちを使うほうが良いですか?
0531デフォルトの名無しさん
垢版 |
2007/05/26(土) 18:15:57
wdkってどっかの商品名とかじゃねえの?w
あるいはひょっとしてwdmとddkがごっちゃになってるとかw
0533デフォルトの名無しさん
垢版 |
2007/05/26(土) 19:15:16
WDF使いたいならWDK。使わないならどっちでもいい。
0534デフォルトの名無しさん
垢版 |
2007/05/26(土) 20:08:47
最近のPCは、シリアルがないですが、Windbgを使うための接続はどうすればいいんでしょう?
0537デフォルトの名無しさん
垢版 |
2007/05/29(火) 08:11:35
>>529-533
フレームワークを使わないならddkのみで良いんですね、wdkがvistaから過去のまででDDKが2003serverから過去ので
この場合wdkはvista用のRTM6000ので良いですか?それともベータの6001が良いですか?
お勧めはどれですか?ddk2003server wdk6000 6001
0538デフォルトの名無しさん
垢版 |
2007/05/29(火) 16:21:57
>>537
32bit XPならどれでもいいよ。
WDKのサンプルはWDMからWDFになっているからDDKと両方入れて
サンプルを比較してみるのもいいと思う。
0539デフォルトの名無しさん
垢版 |
2007/06/12(火) 16:46:05
(多分最新の)DDKに入ってるcl.exeでhello worldがリンクできません。
setenv.bat呼んでcl.exe実行するとなんか最初libc.libがないとか出たので、
環境変数のLIBRARYにdrive:\ddk〜lib\winxpを追加してちょっと
進みました。けど今度は__secure_check_cookieがリンクできないとか出ます。
これって何でしょう?
ソースは
#include <stdio.h>
main() {
printf("Hello, world.\n");
}
これだけです。
エラーメッセージは今出張先なので、明日まで貼れません(すいません)
ともかく__secure_check_cookieがどうとかいうエラーが出ます。
(typoあるかもしれません)
0540デフォルトの名無しさん
垢版 |
2007/06/14(木) 15:58:11
わかんないならTARGETTYPE=PROGRAMになっている
サンプルを参考にしてmakefileとsourcesを書け。
0542デフォルトの名無しさん
垢版 |
2007/06/18(月) 20:31:37
ありがとうございました。
0543デフォルトの名無しさん
垢版 |
2007/07/10(火) 15:04:56
1394のドライバってどうやって作れば良いですか?
0546デフォルトの名無しさん
垢版 |
2007/07/11(水) 15:20:02
1394bのドライバはどこにありますか?
0547デフォルトの名無しさん
垢版 |
2007/10/05(金) 23:04:05
WDKでいろいろいじってる奴いる?

\src\video\r200sampleをビルドしてみたんだが、
Vistaでインストール後、画面プロパティに表示されん。
x86のinfファイルは認識してくれなかったので、mirrorのinf参考にいじってインストしたせいなのか?
0549 ◆0uxK91AxII
垢版 |
2007/11/21(水) 08:35:26
その手のモノを作った事は無いけど、IoSetCancelRoutine。
0550デフォルトの名無しさん
垢版 |
2007/11/21(水) 08:58:43
>549
ありがとうございます
ですが、IoSetCancelRoutineを呼び出すトリガがないのです
クローズが来ないので・・・
0551 ◆0uxK91AxII
垢版 |
2007/11/21(水) 09:51:39
IRP_MJ_CLEANUP、これも違うなら、見当が付かない。
0552デフォルトの名無しさん
垢版 |
2007/11/21(水) 10:42:35
IRP_MJ_CLEANUPを実装してみましたが、
Closeと同じようにPendingしているIRPを終了させないと
IRP_MJ_CLEANUPは届きませんでした

Pendingしたら次のIRPが届くようにすればよさそうな感じですが
なにかいい方法は無いでしょうか?
0553デフォルトの名無しさん
垢版 |
2008/03/10(月) 17:36:52
age
0554デフォルトの名無しさん
垢版 |
2008/05/01(木) 23:18:47
KMDFドライバをスタートさせるには
OpenSCManager=>CreateService=>StartServiceではスタートできないのでしょうか

0556デフォルトの名無しさん
垢版 |
2008/05/21(水) 11:45:54
USBドライバ作ろうと思うんですが、
bulkusbのサンプルを改編すれば、
USBのチップに関係無く作れますか?
0557556
垢版 |
2008/05/21(水) 11:48:36
ついでに、USBのGUIDって何なんでしょ?
0559デフォルトの名無しさん
垢版 |
2008/05/25(日) 00:36:57
定義済みデバイスクラスに属さない独自デバイスなら
(ドライバを作成する必要があるから独自デバイスなんだろうけど)
独自デバイスクラスを定義することになる。
guidgen.exeなんかに吐かせたGUIDを使っておk。
0560デフォルトの名無しさん
垢版 |
2008/06/06(金) 03:11:34
人がいる
0563デフォルトの名無しさん
垢版 |
2008/06/20(金) 17:22:53
x64ホストだと16ビットツールのインストールを選択できないんだがどうにかならないものか
ツール自体は32ビットアプリだからx64ホストでもちゃんと動くのに。
仕方ないから32ビット環境にインストールしてコピーしてるんだが
0564デフォルトの名無しさん
垢版 |
2008/07/16(水) 10:55:11
USBドライバって、みなさんVista対応で作り直されてるんですか?

Win9XとWinNTでドライバモデルが変わったのはよしとして、
Vistaでさらにドライバモデルが発生して苗orz
0566デフォルトの名無しさん
垢版 |
2008/07/16(水) 17:05:22
ttp://www.microsoft.com/japan/whdc/connect/usb/winusb_howto.mspx

これのこと?

WunUSBなんてハツミミですが、何モノで、何が良いんだ?
0567デフォルトの名無しさん
垢版 |
2008/07/16(水) 17:17:36
>>566
MS謹製の汎用USBドライバ

これを介して、自作デバイス用のドライバをユーザモードで書ける
ドライバがユーザモードで動くから、Vista x64でデジタル署名しなくてもおk
0568566
垢版 |
2008/07/16(水) 17:26:56
さんkす>>567

uusbd.sys ってのと用途は競合してるようですね。

でもVista 64bitで楽になるわけですか。

機能的にもWinUSBはマターク遜色無しですか?
例えば、Win側でのパケットサイズが小さ杉ないとか。
0569566
垢版 |
2008/07/16(水) 17:33:34
なんだか、LibUSB ってのもあるようですね。Linuxでも使えるとか。

乱立しててワケワカメ。
0570デフォルトの名無しさん
垢版 |
2008/07/24(木) 01:33:47
LibUSBとかは64bit用には出ないんじゃないの?(証明書買わないだろうし)
フリー系ドライバを根絶する気か>MS
0571デフォルトの名無しさん
垢版 |
2008/07/24(木) 14:33:43
LibUSBというユーザーが、代表して証明書買うんじゃないの?
寄付金募って。

みなさん、WinUSB使われてんですか?
0572デフォルトの名無しさん
垢版 |
2008/07/24(木) 14:42:31
UMDFは2000で使えないから、
テスト的にドライバ作ってみただけで、今のところ使うつもりないかなぁ

Vista x64用ドライバ出せって言われたら、これで済ませてしまうかも知れんがw
0573デフォルトの名無しさん
垢版 |
2008/07/29(火) 17:34:01
ところで、
・UUSBD.DLL
・WinUSB
・LibUSB
のどれがお勧めですか?
0574デフォルトの名無しさん
垢版 |
2008/08/06(水) 09:04:23
USBのinfファイル記述の文法はどこを見れば分かりますか?
0576574
垢版 |
2008/08/06(水) 09:14:05
文法が知りたいんです><;
0577574
垢版 |
2008/08/06(水) 09:33:17
GenInfはあるけど、EditInfは無いんでつね。
0578574
垢版 |
2008/08/06(水) 09:43:47
>Signature="$Windows NT$"
>Provider=%Company%


$とか%てなんなん?
0585デフォルトの名無しさん
垢版 |
2008/08/19(火) 18:57:39
ドライバ作成中に間違って、

>C:\WINDOWS\system32\drivers

フォルダを空っぽにしてしまいましたorz

ドライバが無いせいで内蔵CD-ROMを認識しなくなったのですが、
どうすれば良いでしょう?

WinXPインスコCDのイメージをハードディスクに落して、
setup.exeを実行して「Windows XP をインストールする」
を行いましたが、
「コンピュータの Windows のバージョンが CD に収録されているバージョンより新しいた
め、セットアップを続行できません。」エラーです。

ドライバディスクにもないので、Windows標準ドライバなんでしょうが、
インストロールできません(><;)
0586デフォルトの名無しさん
垢版 |
2008/08/19(火) 19:18:25
ドライバ作るくらいなら、PC起動しなくなるくらいよくある話し

1つ賢くなったということで、Windows再インストールしとけ
0587デフォルトの名無しさん
垢版 |
2008/10/22(水) 16:18:14
ここって質問してええんかな?

今までDDKでコンパイルしていたドライバが
WDKでコンパイルするとafxres.hが見つからないというエラーが出て、
それは#include "afxres.h"をフルパスで宣言すれば回避できるのは分かるんだが
普通にコンパイル時になめるパスを追加できればいいんじゃ?と
誰かそういうパスの追加方法知らない?
0589デフォルトの名無しさん
垢版 |
2008/10/22(水) 16:46:10
>>588
>>587だが、ありがとん。
sourcesファイルにINCLUDES=$(BASEDIR)\inc\mfc42;
と追加したらできた。

ただ、既にINCLUDES=$(BASEDIR)\inc;という
宣言はしていたのにそこの下位フォルダのmfc42フォルダが
WDKから見えなくなったってのは結構不思議だ。
0590デフォルトの名無しさん
垢版 |
2008/10/22(水) 22:54:30
__halt のような組み込み関数を拡張子cppのファイルから呼び出そうとすると
  '__halt': identifier not found
とコンパイルエラーになってしまいます。
拡張子cからはそのまま呼び出せるのですが、C++から直接呼び出すことは可能でしょうか? 
方法があれば教えていただけると嬉しいです

ttp://www.hsjp.net/upload/index.html
up48941.zip (←例としてのソース)

バージョンは 6001.18001 です
0592デフォルトの名無しさん
垢版 |
2008/11/03(月) 23:13:08
:環境
VC++2005pro WDK 6001.18001
:やりたいこと
サンプルソース UsbViewをコンパイルしたい。
(USBからシリアルコードをひっぱりたい)\WINDDK\6001.18001\src\usb\usbview
:やったこと
新規プロジェクト作成>Win32>Win32プロジェクト>空のプロジェクト

プロジェクト>プロパティ>リンカ>コマンドライン
CFGMGR32.LIB COMCTL32.LIB setupapi.lib を追加

ツール>オプション>プロジェクトおよびソリューション>VC++ディレクトリ
ディレクトリを表示するプロジェクト>インクルードファイル>
C:\WINDDK\6001.18001\inc\api C:\WINDDK\6001.18001\inc\crt を追加
ディレクトリを表示するプロジェクト>ライブラリファイル>
C:\WINDDK\6001.18001\lib\wlh を追加

:エラー
エラー
#include <version.h> が見つかりません。
警告が200以上、、、。
warning C4133: '関数' : 'CHAR [数字]' と 'LPCWSTR' の間で型に互換性がありません。

:わからないこと
エラーをなくしたいのと、恐らく間違っているであろう開発環境を正しく設定したい、、、orz

:参考URL
http://slashdot.jp/~fslasht/journal/391690
0593デフォルトの名無しさん
垢版 |
2008/11/04(火) 00:02:56
>>592
プログラム>Windows Driver Kits>WDK 6001.18001>Build Environments>好きな環境選べ
コンソールが開いたら
CD \WINDDK\6001.18001\src\usb\usbview
nmake
0595592
垢版 |
2008/11/04(火) 22:45:51
質問:
1.
○○.sys のドライバをリソースとして実行ファイルに組み込むことは可能ですか?
2.
1が可能な場合
FindResource関数にリソースタイプ(RT_○○)の正しい値がわからない。

1について わからないところ:
リソースファイル(○○.sys)をCreateService(にかわるもの)にわたしたいが、なにか適当な関数が見つからない。
2について わからないところ:
リソースの読み込みは
HRSRC hres = FindResource( GetModuleHandle(NULL), in_path, RT_STRING );
HGLOBAL hmem = LoadResource( GetModuleHandle(NULL), hres );
char *lplock = static_cast< char * >( LockResource( hmem ) );
でやっています。
FindResourceのリソースタイプ(RT_STRING)があっているのか不安。
0596デフォルトの名無しさん
垢版 |
2008/11/04(火) 23:30:57
RT_STRINGとしてリソースにしたなら、RT_STRINGでFindResourceするしかないだろ。

どっちかというとRT_RCDATAのほうがふさわしいと思う。
0597592
垢版 |
2008/11/04(火) 23:47:34
>>596
さっそくのレスありがとうございます。
RT_RCDATA を使って読み込んでみます。

今VC++2005を使っているのですが、
ソリューションエクスプローラー>○○.sysをクリック>
ファイルのプロパティ>ファイルの種類をRCファイルに設定で大丈夫でしょうか?



0598デフォルトの名無しさん
垢版 |
2008/11/05(水) 03:02:30
え、もしかしてリソースって扱ったことない?
0599592
垢版 |
2008/11/05(水) 03:31:58
>>597
こんな時間にレスサンクスです。
リソース扱ったことないです、、、orz。

char *lplock = static_cast< char * >( LockResource( hmem ) );
から相変わらず、CreateServiceに値を渡す方法がわかりません。
(CreateServiceに代わる関数が見つかりません、、、orz)
0600 ◆0uxK91AxII
垢版 |
2008/11/05(水) 09:32:04
GetSystemDirectoryでpathを取って、そこのdrivers直下にでも書き出せば良い。
0601592
垢版 |
2008/11/05(水) 12:44:20
>>600
レスサンクスです。
1度ファイルに書き出してから、やってみたいと思います。
GetSystemDirectory関数は初めて知りました。
貴重な情報ありがとうございます。
0602592
垢版 |
2008/11/08(土) 20:14:33
質問:STLのvectorが使いたい。
環境:
MFC(VC++2005Pro)で現在開発しています。
プロジェクト>プロパティ>構成プロパティ>C/C++>全般
追加のインクルードディレクトリで以下を設定しています。
C:\WINDDK\6001.18001\inc\crt
C:\WINDDK\6001.18001\inc\api
エラー:
#include <vector>を行うと、
c:\program files\microsoft visual studio 8\vc\include\iosfwd(34) : error C2146: 構文エラー : ';' が、識別子 'fpos_t' の前に必要です。
以下、とんでもない数のエラーが出ます。

解決のため、なにかしらヒントなりいただければと思います。
0603デフォルトの名無しさん
垢版 |
2008/11/08(土) 23:26:18
そろそろつまみ出せ!!
0605 ◆0uxK91AxII
垢版 |
2008/11/09(日) 10:58:26
MFC()笑
とりあえず、makefileでやるべき。
0606592
垢版 |
2008/11/09(日) 20:41:08
すんません、出直してきます。
0607デフォルトの名無しさん
垢版 |
2008/11/19(水) 11:47:28
先生方、(フィルタ)ドライバ側からレジストリキー読んだり、
書き込んだりする関数についてサイト、書籍知ってたら教えてください。

ttp://www5a.biglobe.ne.jp/~crab/winddk/kernel/index/index01.html
とりあえず↑を見つけたのだがよくわかんね。
0609607
垢版 |
2008/11/20(木) 00:58:30
>>608
ありがd
英語がんがってみる。
0610デフォルトの名無しさん
垢版 |
2008/11/21(金) 18:02:32
ZwOpenKey使いたいんですが、失敗します。
RtlInitUnicodeString( &RegPath, REG_KEY_PATH );
InitializeObjectAttributes( &Attr, &RegPath, OBJ_CASE_INSENSITIVE, NULL, NULL );
恐らく、↑でパスの指定ミスってると思うんですが、
#define REG_PATH L"\\HEKY_CURRENT_USER\\Software\\TEST_01"
ってやったらダメだったのですが、正しくはどのように書くんでしょうか?
0612610
垢版 |
2008/11/21(金) 18:33:45
レスアリガタス。
ZwEnumerateValueKey使ってキーの値を取得したいんですが、
その場合、キーの指定っていうのはどうやるんすか?
ZwEnumerateKeyで列挙してから使うんでつか?
0613 ◆0uxK91AxII
垢版 |
2008/11/21(金) 20:55:22
>>612
>キーの指定
ZwCreateKey

kernelModeで列挙っていうのは、どうも嫌なモノを作ろうとしているように見える。
0614610
垢版 |
2008/11/21(金) 21:29:45
>>613
レスアリガタス。
頭悪いんでまとめると、キーを指定して値とりたい場合っつーのは、
ZwOpenKey使わないで、ZwCreateKey使えでFA?
ZwCreateKeyの第2引数は、\\HEKY_CURRENT_USER\\Software\\TEST_01指定でOK?

>kernelModeで列挙っていうのは、どうも嫌なモノを作ろうとしているように見える。
ZwEnumerateValueKey使うのは、レジストリのキーの値を取得する関数を他にシラネからです。
レジストリに書き込んである値はインストールパスとインストールした日付です。
Windowsアプリで言う、SHRegGetUSValue関数みたいなのがあればいいのだが、
見つからなかったっす。
0615610
垢版 |
2008/11/21(金) 21:35:03
スマソ。間違えた。
>>614
間違い
>ZwCreateKeyの第2引数は、\\HEKY_CURRENT_USER\\Software\\TEST_01指定でOK?
訂正
ZwCreateKeyの第2引数は、KEY_QUERY_VALUE指定して、InitializeObjectAttributes関数でのパスの指定で
\\HEKY_CURRENT_USER\\Software\\TEST_01指定でOK?
俺、頭マヂ悪い
0617 ◆0uxK91AxII
垢版 |
2008/11/21(金) 23:14:57
>HEKY_CURRENT_USER
諦めれ。
つーかマニュアル読め中坊^o^
0619610
垢版 |
2008/11/22(土) 11:01:23
レス3つも北。愛が伝わってきた。

厨房らしくサンプルソースにグレップかけて、いろいろ見てみた。
"\\Registry\\Machine\\Software\\TEST_01"
の指定でとりあえず、HKEY_LOCAL_MACHINE以下にあるキーは取得できそう。

サンプルにHKEY_CURRENT_USER以下のレジストリを扱う処理がなかったと
思ったんけど、探しきれていない?
"\\Registry\\User\CurrentUser\\ こんな感じだと思うんだけど、、、。
うまく開けない、、、。
教えてエロい人。
0620デフォルトの名無しさん
垢版 |
2008/11/22(土) 11:20:58
current userって誰を期待している?
ここまで書いてもわかんないならあきらめろ。
0622610
垢版 |
2008/11/23(日) 13:03:28
ツンデレスアリガタス。
とりあえず、HKEY_LOCAL_MACHINE以下の可変長データ取得できるようになったお。
HKEY_CURRENT_USERは無理っぽいお。
みなさまの暖かい助言により、なんとか目的が達成できそうです。
チラ裏スマソ。

0624デフォルトの名無しさん
垢版 |
2009/02/28(土) 21:14:21
ハードウェアidや互換性idをデバイスマネージャで見ると
PCI\VEN_102C&DEV_00E0&REV_04
PCI\VEN_102C&DEV_00E0
PCI\VEN_102C&DEV_00E0&CC_030000
PCI\VEN_102C&CC_030000
というふうに複数あったりしますが、
SetupDiGetDeviceRegistryPropertyで取得するとき
どれが取れるかはどういう風に決まってるんでしょうか?
0629デフォルトの名無しさん
垢版 |
2009/05/04(月) 23:11:02
テレビーチューナーのドライバをx64用に作るのは難しい?

ペンギンなら解析の情報はここにあるんだけど。
ttp://linux.paken.org/index.php?CX23416GYC-STVLP%A4%CE%B2%F2%C0%CF
0630デフォルトの名無しさん
垢版 |
2009/06/12(金) 10:09:22
WDK のサンプル usbview を参考に USB デバイスを列挙するサンプルを書いてます。
WDK は C:\WinDDK\6001.18002 にインストールしています。

ttp://support.microsoft.com/default.aspx?scid=kb;JA;259695
を元に、SetupDiEnumDeviceInterfaces と SetupDiGetDeviceInterfaceDetail
に変更しようとしているのですが、この場合は SetupDiGetClassDevs の
第一パラメータにクラス GUID を指定しないといけないようです。

そこで、enum.c にあるように「(LPGUID)&GUID_CLASS_USB_HOST_CONTROLLER」
を指定してみたのですが、リンクエラーになります。 GREP してたどってみると、
wdf.lib に実体があるようなので、C:\WinDDK\6001.18002\lib\wnet\i386 を
ライブラリディレクトリに追加して
#pragma comment(lib, "wdf.lib")
を書き加えてみましたが、さらにたくさんのリンクエラーが出るようになりました
(wdf.lib の未解決シンボル)。

どのように設定すればリンクできるのでしょうか。
ググっても情報が少ないので参ります…。
0631630
垢版 |
2009/06/12(金) 10:31:10
忘れてました。
コンパイラは Visual C++ 2005 です。
とりあえずコンソールアプリとして作っています。
0633デフォルトの名無しさん
垢版 |
2009/06/12(金) 11:44:47
>>632
どうも。
#pragma comment(lib, "setupapi.lib")
は追加してあって、GUID_CLASS_USB_HOST_CONTROLLER
を使わない SetupDi のサンプルはビルドできています。

エラーに出てくるシンボルを grep して、片っ端から追加してるんですが、
こんな方法しかないんでしょうか…。
0634デフォルトの名無しさん
垢版 |
2009/06/12(金) 12:01:27
なんでGUID_CLASS_USB_HOST_CONTROLLERを追加するとリンクエラーになるわけ?
コンパイルエラーだろ?

ライブラリじゃなくて、インクルードファイル探せよ
0636630
垢版 |
2009/06/12(金) 12:20:24
それがですねえ、追加してあるんですよ。
今プリプロセッサ関係はこんな感じ。

#include "stdafx.h"

#include <stdio.h>
#include <windows.h>
#include <setupapi.h>
#include <devguid.h>
#include <regstr.h>
#include <usbiodef.h>

#pragma comment(lib, "setupapi.lib")

これでビルドすると、

エラー 4 error LNK2001: 外部シンボル "_GUID_DEVINTERFACE_USB_DEVICE" は未解決です。 UsbDevTest.obj

って怒られます。
それで wdf.lib 追加すると芋づる式に。
0638630
垢版 |
2009/06/12(金) 13:37:54
通りました、ありがとうございます!

そういや setupapi.lib って、パス追加してないのに何でリンクできるんだろうと思ったら、
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib にもいたんですね。

はあ、やっとスタートラインにたどり着きました…。
しかもデバイス取れてねぇ…。 z_/o
0639デフォルトの名無しさん
垢版 |
2009/06/13(土) 07:11:14
ビルドができないとか言っている奴はなんでVC++でやろうとするかねぇ。
どうせデバッグできないんだからCUIでやればいいのに。
0641630
垢版 |
2009/06/15(月) 14:42:22
結局私の想像以上に面倒なようでしたので、
ttp://www.usefullcode.net/2007/02/usbusb.html
のサイトのサンプルを参考にさせてもらっています。

それで、目的の USB メモリを探してアクセスしたいのですが、
アクセス用の名前をどうやって取得するかで躓いています。
WMI の CIM_LogicalDevice クラスを使えば「\\.\PHYSICALDRIVE?」
の形で取得ができるのですが、Setup Di API と共通する
情報が得られません。私が見つけられないだけだと思うのですが…。
WMI 使わなくてもアクセス用の名前は得られるのでしょうか。
アドバイスいただけると幸いです。

>>639
一応マイクロソフトのサンプルや、上記サイトのコードなどは
ブレークかけて見たりできてますけど、そういう意味ではなくてでしょうか?
0642630
垢版 |
2009/06/15(月) 16:11:55
うーん、WMI から得られる情報で、PNPDeviceID の中にシリアル番号が
含まれてるっぽいですね。とりあえずこれが一致するかみて、実際にデバイスを
開いて中身を確かめるって感じでいけばいいかな…。
0643デフォルトの名無しさん
垢版 |
2009/06/15(月) 21:01:15
SetupDiEnumDeviceInterfaces・SetupDiGetInterfaceDeviceDetailで
PSP_DEVICE_INTERFACE_DETAIL_DATAを取得して
それのDevicePathでファイル開いて
DeviceIoControlでIOCTL_STORAGE_GET_DEVICE_NUMBERでとった番号と
USBの物理ディスクの番号を比較したらいい
0644630
垢版 |
2009/06/16(火) 11:59:08
どうもありがとうございます。でもこれって GUID_DEVINTERFACE_DISK を指定して
列挙したときの DevicePathじゃないと取れないのでは。

USB のシリアル番号が欲しいんで、USBview のように、
GUID_CLASS_USB_HOST_CONTROLLER からたどって列挙したデバイス情報から
USBの物理ディスクの番号を知りたいんです。

何かボケてるでしょうか。
0645デフォルトの名無しさん
垢版 |
2009/06/16(火) 13:09:42
>>644
何したいのかいまいち見えてこないけど
最終的にUSBメモリのシリアル番号を取れればいいわけ?

USBViewと同じ方法でインターフェースデスクリプタ読んで、
それがマスストレージクラスになってるUSBデバイスのシリアル番号を取得じゃダメ?
0646630
垢版 |
2009/06/16(火) 13:36:43
スミマセンわかりにくくて。
USB メモリにプロテクトドングルを兼ねさせるということで、

(1) シリアル番号はあらかじめわかっている
(2) USB デバイスを列挙してシリアル番号を探す
(3) そのシリアル番号のドライブは?←ここが問題

と、大雑把にはこうです。
で、あれこれ試した結果、苦肉の策が >>642 だったんですが、
もっとスマートな方法があればと思って四苦八苦してます。
0648デフォルトの名無しさん
垢版 |
2009/08/13(木) 20:21:51
ドライバ作成の初心者です。
フィルタドライバで、別プロセスが作成(書き込み)したファイルを監視し
そのパスをユーザモード側(自分のプログラム)に通知を行うドライバを作成したいと思います。
(アンチウイルスソフトの常駐監視機能のような機能)

このあたりの勉強を行いたいのですが、参考になる書籍や、サンプルソースなどご存知のかたが
いましたら教えていただけないでしょうか?(書籍を見たところほとんどがUSBドライバなどの本ばかりでした)

現状はWDKのサンプルソース(src\filesys\配下)やネットで調べていますが、なにぶん始めての領域で
どこからスタートすれば良いのかも悩んでいるところです。
WDKのサンプルで一番参考になりそうソースを教えていただければ大変参考になります。
0649デフォルトの名無しさん
垢版 |
2009/08/15(土) 01:14:03
USBデバイスをPCIデバイスに擬似的に変換(又はエミュレート)する方法ってあるのでしょうか?
0650デフォルトの名無しさん
垢版 |
2009/08/15(土) 17:28:58
そういえば、実USBデバイスをエミュレートする疑似USBデバイスソフトあれば
デバッグ楽かもしれん、と思いつつ作りかたが分からずに挫折したなあ昔。
0651デフォルトの名無しさん
垢版 |
2009/08/16(日) 07:34:35
>>648
書籍といったら「Windows NT ファイルシステム詳説」くらいしか知らないけど絶版。
原書ならUSのAmazonで買えるようだが。
原書のサンプルは以下のExamples以下よりダウンロード可能。
ttp://oreilly.com/catalog/9781565922495/

あとはntifsとかでぐぐったらいくつか出てくるんじゃないかな。フリー版IFSとか
ttp://www.acc.umu.se/~bosse/
0653648
垢版 |
2009/08/20(木) 17:33:43
>> 651
返信遅れました。申し訳ありません。

”Windows NT ファイルシステム詳説”の日本語版は、なぜか会社にありました。
本はあれども、知識を持っている人がいないので1から勉強してみたいとおもいます。
また、FileMonの昔のソースを見つけましたので、これのドライバの部分がとても参考になりそうです。

ご教授ありがとうございました。

0654デフォルトの名無しさん
垢版 |
2009/09/01(火) 12:36:33
KMDFでドライバを作成した場合、WdfCoInstaller01009.dllの再配布は可能でしょうか?
0655デフォルトの名無しさん
垢版 |
2009/09/08(火) 00:40:32
WDMで、LPCバスに接続されている機器をI/Oポート経由でアクセスしたいのですが、
ポートのマッピングの方法を教えてください。

HalTranslateBusAddressの引数にLPCバスタイプが存在しないので、どうした良いものなのか。
よろしくお願いします。
0656デフォルトの名無しさん
垢版 |
2009/09/09(水) 19:56:14
LPCはソフトウェア的にはISA互換と考えていいはず。
それはともかくHalTranslateBusAddressを使いたい理由が不明。
0657655
垢版 |
2009/09/14(月) 13:47:28
>>656

亀レスですいません。レスありがとうございます。

色々と混乱していまして....

I/Oポートアドレスの割り当ては、IoAssignResourcesを使えばよろしいのですか?

0659
垢版 |
2009/09/30(水) 00:13:02
>657
I/Oのみ使用するISA Bus(X-Bus)ボードなら
src/general/portio
のサンプルがほぼそのまま使えるよ!

どんなリソースが、どこから、どれだけボードに割り当てられたかは
IRP_MN_START_DEVICEでわかるよ!

ボードがなくてもドライバのインストールができる(試験用ドライバ
では物理リソースにアクセスしないようしておきます)ので、
クラッシュしても中田氏しても大丈夫なPCを用意してWinDbgで
ドライバや制御アプリの動きをみてみるといいよ!

         ハ_ハ  
       ('(゚∀゚∩ できるよ!
        ヽ  〈 
         ヽヽ_)

ここまで書いて「いまさらISAボードの新製はねぇか?」と思ったが、
せっかく書いたのでこのまま投稿させていただきます。
0660デフォルトの名無しさん
垢版 |
2009/09/30(水) 22:54:06
LPC deviceだとISAPNP対応するかACPIのDSDTに記述がないとOSが認識できないし
リソースも割り当てられないからIRP_MN_START_DEVICEは飛んでこないよ。
0661 ◆0uxK91AxII
垢版 |
2009/10/01(木) 00:21:06
*.infの記述とデバイス マネージャの設定で、来た気がする。
0664デフォルトの名無しさん
垢版 |
2009/12/27(日) 09:09:31
なんということだ
0665デフォルトの名無しさん
垢版 |
2010/02/19(金) 07:24:09
DDKの選びかたについて質問があります。

VISTA以前はDDKが主流だったそうです。
しかし現在、WDKがDDKに置き換わっているようです。

私のPCはOSがWindowsXPなのですが、旧来のDDKをなんとかして手に入れてるべきなのか
それともWDKを入れればよいのかどちらでしょうか?

とりあえず、どんなOSも最新のWDKを入れて開発しておけばいいという考え方は間違っていますでしょうか?
回答よろしくお願いいたします。
0667デフォルトの名無しさん
垢版 |
2010/02/19(金) 09:29:15
ここまで無駄に長文だと読んだだけで腹が立つなw
XP以降がターゲットの場合DDKとWDKどっちがいいの?の、たったこれだけの内容に何行使うんだよ
0668デフォルトの名無しさん
垢版 |
2010/02/19(金) 09:47:20
XP以降がターゲットとは言ってないんじゃないか?
最近のlink.exeは/VXDオプションをサポートしないしターゲットによってはDDKが必要
0669デフォルトの名無しさん
垢版 |
2010/02/19(金) 12:45:44
>>668
ということは開発するものによってはDDKを使う必要もあるのでしょうか?
XPのできるだけ深いレベルでのデバイスドライバを開発したいのですが、
一般的に言って、そういった開発でWDKを用いても大丈夫といえそうですか?
0670デフォルトの名無しさん
垢版 |
2010/02/19(金) 13:20:29
95/98/ME:vxd
98/ME/2K/XP/Vista/7:WDM
2K/XP/Vista/7:KMDF
XP/Vista/7:UMDF

DDK:vxd/wdm
WDK:wdm/kmdf/umdf

テキトーだけどこんな感じ
0671デフォルトの名無しさん
垢版 |
2010/02/19(金) 15:50:26
>>668
ググりゃ即答えが出るような事をわざわざ長文で聞くような低レベルな奴が
非NT系OSをサポートする気のわけ無いだろうよw
それにあの分量書いてvdxサポートの事を抜かしたと言うなら、本物の馬鹿だから何教えても無駄と言う帰結
0675 ◆0uxK91AxII
垢版 |
2010/02/20(土) 08:17:21
Windows 2000以前: DDK
Windows XP以降: WDK

って認識でOK。
0677デフォルトの名無しさん
垢版 |
2010/10/18(月) 19:19:03
ホッシュ!
0678デフォルトの名無しさん
垢版 |
2010/10/29(金) 18:58:31
デバイスドライバの勉強したいんですけど、何から始めたらいいですかね?
サンプルコードみてもチンプンカンプンです
0680デフォルトの名無しさん
垢版 |
2011/03/15(火) 16:48:30.18
すみません、質問ですorz

Win32のアプリと32bitドライバがあるのですが、
Win64で動作させてみようとしたところ、32bitドライバをWin64が認識しません。(当たり前か)

将来的には、フル64bitしたいのですが、当面「Win32アプリ+64bitドライバ」の形体でしのぎたいと思っています。

「Win32アプリ+64bitドライバ」は可能なのでしょうか?
可能だとすれば、サンプルとか情報がどこかに落ちてないでしょうか?
0683680
垢版 |
2011/03/16(水) 09:53:22.20
つ [d]

>32bitドライバとアクセスするのと一緒

そうなんですか。意外でした。。。
0685デフォルトの名無しさん
垢版 |
2011/03/16(水) 20:10:14.50
ドライバのソースを改造したいと思っています。
ドライバの中でOutputDebugString@Win32APIはコールできますか?
cygwin/gcc系ソースなのですが、ドライバの中の人の状態が分からないと不安です。。。
0688685
垢版 |
2011/03/17(木) 08:58:54.11
jkを有難うございました。

DbgPrintでググって使い方も見つけますた\(^o^)/
ttp://ruffnex.oc.to/kenji/windriver/
0690デフォルトの名無しさん
垢版 |
2011/04/22(金) 22:49:52.62
USBのデバイスって入力デバイスとか、イメージングデバイスとか規定のクラスに属していないとだめなの?
例えばPCからUSBでデータをデバイスに送信して、モータを制御するとかそういうことをやるにはどんなデバイスクラスにすればよいの?
0694デフォルトの名無しさん
垢版 |
2011/06/08(水) 17:56:16.73
I/O Stack Locations ttp://www.osronline.com/ddkx/kmarch/irps_8lgn.htm
の中の人って、ダンプ出来るんですか?
0696694
垢版 |
2011/06/08(水) 19:05:44.64
つ [d]

なるほど、ドライバだからメモリアクセス無問題ってことですねw

USBデバイスから受けたデータが化けているかどうか調べたいのです。
デバイス送信データのメモリダンプを行いたいのですが、、、
ダンプツールだとかI/Oスタックロケーションのダンプコードとか、
ありますでしょうか?
0697デフォルトの名無しさん
垢版 |
2011/06/09(木) 08:37:29.85
すみませんlibusb-win32使ってて躓いてます。教えて下さいorz

ホストからターゲットへ、
CLEAR_FEATUREっていうのを送信した後、
リトライの嵐っぽいです。

sysのソースを見ても、
LIBUSB_IOCTL_CLEAR_FEATURE
のcaseでclear_feature(...)をコールしてるっぽいし。

LIBUSBの定数っぽいですが、アプリはコールしてないし。。。
OSがコールしてるのでしょうか???
もしそうなら、どういう時に発生するのでしょうか?
0699デフォルトの名無しさん
垢版 |
2011/06/09(木) 11:56:57.70
あっそういうもんですか。

エンドポイントしぼーんで、OSが復活の呪文?
0700694
垢版 |
2011/06/10(金) 14:00:15.35
I/Oスタックロケーションをダンプされたことのあるかた、
やり方(コードw)を教えて下さいorz
0707デフォルトの名無しさん
垢版 |
2011/07/25(月) 18:52:15.81
Windows Driver Model相談室スレで何度か質問でみた KernelStream のビデオ/オーディオドライバ
とかって何を参考に、みなさん組んでますか?
書籍を何冊かみたけど、その辺が参考になるものが見当たらなくて・・・
0708デフォルトの名無しさん
垢版 |
2011/08/11(木) 13:44:33.90
64bitのデバドラ署名って、なんちゃってじゃ無理?
必ず証明書チェインのルートがMicrosoftである必要あり?

DEBUGONで署名なしでも導入できるけど気持ち悪いし。
0710デフォルトの名無しさん
垢版 |
2011/08/17(水) 02:56:59.57
AVStreamのサンプルをベースにいろいろお試し中だが、KsStudioでしょっぱなからDeviceIoControl
が出まくる…
ソースのメソッドのNTSTATUSの値はSTATUS_SUCCESSだから、何か必要なものが抜けてるんだろけど
何をすればいいのかわからんw

Querying for structure size for KSEVENT_TYPE_SETSUPPORT
SyncIoctl: DeviceIoControl failed. Last Error = 0x00000490
SyncGetSupportedEventSets: size query failed
Getting property KSPROPERTY_PIN_CTYPES
0711デフォルトの名無しさん
垢版 |
2011/08/18(木) 13:27:52.97
kbfiltr からKEYBOARD_INPUT_DATA を生成して ServiceCallBack 送信しても
DirectInput なるクライアントは無反応、な理由は何が考えられますか。

・DirectInput 利用時とそれ以外で、通過するスタックが異なる
・仮想キー生成方法がおかしい

たぶん後者のような希ガスだけど原因よくわからんし・・・
DirectInput なクライアントでなければ動くだけに。
0713片山博文MZ
垢版 |
2011/09/14(水) 17:29:42.34
age
0714片山博文MZ
垢版 |
2011/09/14(水) 17:31:19.18
Windows Liveに入会して、Connectに登録して……
Win98/Me/2K用のWDKを手に入れて……めんどいなぁ。
0715デフォルトの名無しさん
垢版 |
2011/10/16(日) 15:39:19.21

0716デフォルトの名無しさん
垢版 |
2011/11/02(水) 21:04:37.52
ドライバ開発はサンプルとかを1行づつ変えて挙動を自分で調べていくしかないな
最後まで調べ上げてようやく、根本的に違うサンプルを見てることに気がつく
それを何度か繰り返すとようやく本当のサンプルにたどり着くけど
今まで調べた部分も意外に役に立つので決して無駄にはならない
実際、1つドライバを完成させることが出来れば他は応用になるから理解は早いだろうが
完成するソースはサンプルより短くて終わる
0717デフォルトの名無しさん
垢版 |
2011/11/25(金) 23:38:50.79
すでにフィルタドライバがインストールされているデバイスに別のフィルタドライバを入れると、
もともとのフィルタドライバが削除されてしまうんだけど、
これはinfファイルの書き方の問題ですか?
0719デフォルトの名無しさん
垢版 |
2011/12/04(日) 14:43:57.98
WDFの日本語文献の無さに絶望
WDF版Toasterのソース読んでもPDOとデバイススタックが理解できん orz
0720719
垢版 |
2011/12/24(土) 20:40:48.97
目的のドライバが取り敢えず動いた
サンプルは重要だと再認識
0721デフォルトの名無しさん
垢版 |
2011/12/27(火) 08:51:32.67
DirectInput系でMJ_READが飛んでこないのは何で?
kbfiltr でモニタリングしてるけど何も発生せず・・・
0723デフォルトの名無しさん
垢版 |
2011/12/27(火) 12:19:53.33
>>722
レスありがとございます。

実際のキー入力だと反応するけどi8042prtの上位フィルタを通らないってのが良くわかりません。
i8042prt を HID として見せるスタックがあって、それだと i8042prtの上位の kbfiltr は通らないって
ことですかね。そもそも i8042prt 使わないとか。考え方が間違ってますか?
0725(゜∀。)
垢版 |
2012/01/07(土) 17:23:25.69
スピンロックを取りたくなくてPDOへの全リクエストをFDOへ転送しシリアライズ、それがアダになった
新しく書いたコードをビルドした時ふとキューイングのコトが気になった
増大したリクエストに対しどうかな・・・と

だけどごまかした 大丈夫だろうと 自分に都合よくいいきかせた

やっぱり処理速度が低下した 完全なレスポンス不足だ あまりにも稚拙なミスだった
たしかにわかっていたんだ ・・あの時

だけどごまかした 早く(コードを)走らせたくて自分の心をごまかしたんだ
残ったものはただ‐ 悔やみきれない後悔だけだ orz
0731デフォルトの名無しさん
垢版 |
2012/01/14(土) 00:20:48.38
セキュアブートを外せない機種だと
署名がないバイナリのカーネルモードへのロードは不可能になるんじゃね
0732デフォルトの名無しさん
垢版 |
2012/01/23(月) 03:06:34.43
さいきんDDK?
0734デフォルトの名無しさん
垢版 |
2012/01/23(月) 08:52:14.85
韓流の聖地、光と影 脱税など不正 観光客マナー悪化
<一部抜粋>

販売許可なし? 活気づく街の陰には負の部分も浮かぶ。

 東京国税局は、新大久保で韓流ショップを運営する「ワールド・アップル商事」と同社社長(45)が売り上げの一部を申告せず
約4千万円を脱税したとして、東京地検に法人税法違反罪で告発した。経営する店舗の一つでは簡素なシールを貼り付けただけの
DVD数枚を1セットにして、テレビドラマ全編を2千〜3千円で販売。男性店員は「商品はすべて公式ライセンスを取得している」と話すが、
「KBS(韓国放送公社)ジャパン」(東京)によると「新大久保の韓国グッズ店で販売許可を得ている店は一店もない」という。

 一方、大阪府堺市から来店したという女性会社員(24)は、定価の半額で購入した写真集を手に「販売ルートは関係ない」と意に
介さない様子だ。

 深夜を迎えると、飲食店付近の歩道にはゴミ袋30〜40袋がうずたかく積まれることも。新大久保商店街振興組合の理事の一人は
「韓国系の大部分の店舗は組合に加盟しない。ゴミ収集など街の問題について話し合うのが難しい」と嘆く。

地元住民は複雑

 地元住民からは日本人観光客に対する苦情も絶えない。大正6年から95年続く文房具店の女性店主(68)は「大騒ぎにはこれ以上
耐えられない」と来月、閉店することを決めた。

 昼間には母親グループが託児所のように店内に子供を置き、買い物に出かける。深夜でも、酒に酔い韓国人男性に抱えられた日本女性が
騒ぐ。観光地化に伴い地域住民は新大久保を離れ、売り上げも半減した。「ブームが過ぎれば、くしの歯が欠けるようにさびれるでしょ。
もう普通の街に戻ることはない」(女性店主)。店舗を引き継ぐのは韓国グッズ店だという。

 同組合の内藤雅也副理事長は「お客さんが新大久保に来てくれることはありがたい。韓流を地域活性化にうまく活用できるよう問題を
解決していきたい」と話している。

http://sankei.jp.msn.com/life/news/120122/trd12012221460012-n2.htm
0742デフォルトの名無しさん
垢版 |
2012/11/07(水) 05:10:35.00
既存のUSBドライバに送られるデータを読み書きしたりできるフィルタドライバを作ることは可能でしょうか?
また、サンプルでよいものがあったら教えてください

0745デフォルトの名無しさん
垢版 |
2013/01/02(水) 14:13:30.56
質問です。
現在ファイル・ストレージに関してREAD/WRITEのバッファを
書き換えるドライバを作成しているのですが、

ユーザーランド
-------------------------
FAT, NTFS等の高度FS
------------------------- ←←← ここ
ボリューム(パーティション)
-------------------------
ストレージデバイス(HDD, SD, USBMEM)
-------------------------
ハードウェア

矢印 ← のところにフィルタドライバを挟みたいのですが、
どのようにすればいいのでしょうか。
FS Filter? Storage Miniport?
0749デフォルトの名無しさん
垢版 |
2013/01/10(木) 02:56:26.51
mozcのソースくらいしかないんじゃね
モノがIMEだと洋書や海外サイトはまったく役に立たないし
0750デフォルトの名無しさん
垢版 |
2013/01/10(木) 07:40:01.09
WDF 1394 Virtual Device Hybrid Sample Driver
なんだコレ、まともに動かないじゃないか

バグだらけと迄は言えないが・・・・
最低限 一度くらいは検証してからリリースしろよな。
ぷんぷん!!
0753デフォルトの名無しさん
垢版 |
2014/01/04(土) 00:34:38.32
仮想マルチモニタ環境でテストしたいので、だれか偽ディスプレイドライバ作って下さい。
0755デフォルトの名無しさん
垢版 |
2014/05/13(火) 23:13:14.56ID:fhHSNmED
Win8.1使ってます
CypressのUSBドライバを動かしたいんですけど絶望的ですね
Win7では証明書なしでも動いたのに。。
といってもWin7も最近買いなおしたバージョンでは署名がないとダメでした。
まぁF8でドライバ署名強制をオフにすれば行けますががが

ドライバやカーネルモードのプログラムの実行は
マイクロソフトの証明書とのcross certificateが必要なのでしょうか?

ユーザが信用する!っていえば別にいいじゃんねぇ
なんでダメなの
0756デフォルトの名無しさん
垢版 |
2014/05/13(火) 23:18:55.69ID:I3YIR7QR
出来の悪いデバイスドライバのせいで
これだからWindowsはダメなんだ!!!
という不当な中傷が絶えないから
0757デフォルトの名無しさん
垢版 |
2014/05/13(火) 23:23:00.35ID:fhHSNmED
まぁドライバとかカーネルモジュールはだれが犯人かわかりませんからねぇ
そうはいっても署名したからと言ってコードの品質が上がるとは限らない
0758デフォルトの名無しさん
垢版 |
2014/05/14(水) 02:46:38.54ID:Btl4scol
Cypressって、どのバージョンでしょう?
7x64で動いてたなら、8.1x64でも使えるはずですけど、
VID/PIDを修正したとかですかね。
0759デフォルトの名無しさん
垢版 |
2014/05/14(水) 22:58:58.07ID:UXWubxhC
>>758
だいぶ前に買ったノートPCのWin7は動きましたね。
でも最近かったWin7はダメでした。
Win8は試してませんがドライバ署名強制を無効にしないとダメだと思います。
Cypress Suite USB3.4.7というやつからもらいました
でも付属のInfがそもそもGUIDがXXXXになっているし
カタログファイルもありませんので自分で署名してくださいという状態のようでした。
0762デフォルトの名無しさん
垢版 |
2014/05/15(木) 21:24:53.82ID:ceZSKVZI
>>760
やってみました
完ぺきでした

ご協力ありがとうございます!!
0764デフォルトの名無しさん
垢版 |
2014/06/09(月) 10:44:55.54ID:4MfCfiId
テスト証明書のことで躓いてる
Win8.1 amd64 ぶっちゃけamd64は初体験
Win7 i386 で似たようなことやって成功してるからスキルレベル1くらいはある
inf でなく、SCMで登録してアプリケーション内で呼ぶタイプ
オレオレ証明書作って署名して投入するんだが、
テストモード(って右下に出てる)にしても、エラー193が返る
なにかpitfallがあったら教えて
0766デフォルトの名無しさん
垢版 |
2014/06/10(火) 13:38:22.29ID:zkp0Av9w
あれ。書けてる。マルチになっちまったゴメソ
それだけは確認したけど、大丈夫だった
.pdata セクション見えてるし
0767デフォルトの名無しさん
垢版 |
2014/06/10(火) 20:11:45.64ID:zkp0Av9w
わかった 原因は意外なところにあった
EXEのチェックサムを見ようとPEエディタ通したら、余計な項目が変化してた
署名前のファイルまで確認したもんだから、そっからずっとだった
イベントログに、0xC0000007B と出てたんだが、ほんとだったんだ
(署名エラーもそれになるのかと思ってたよ、でも違和感もあった)
署名の問題でなく、ドライバPEファイルの初歩の問題だったことになる
0768デフォルトの名無しさん
垢版 |
2014/08/09(土) 17:52:47.48ID:IZWo8dBt
★2ch勢いランキングサイトリスト★

☆ +ニュース
・ 2NN
・ 2chTimes
☆ +ニュース新着
・ 2NN新着
・ Headline BBY
・ Unker
☆ +ニュース他
・ Desktop2ch
・ 記者別一覧
☆ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
☆ 実況込み
・ 2勢
・ READ2CH
・ i-ikioi

※ 要サイト名検索
0769デフォルトの名無しさん
垢版 |
2015/06/15(月) 12:07:26.99ID:mCduSgmk
スレチですまんが

これでsha256になってんの?
捺印アルゴリズムがsha1になってて分けワカメorz

The following certificate was selected:
Issued to: CPI Technologies, Inc.
Issued by: GlobalSign CodeSigning CA - SHA256 - G2
Expires: Thu Oct 15 11:29:33 2015
SHA1 hash: 969369F2B3539100D14A15D076FB64A77728C82E

Cross certificate chain (using machine store):
Issued to: Microsoft Code Verification Root
Issued by: Microsoft Code Verification Root
Expires: Sat Nov 01 22:54:03 2025
SHA1 hash: 8FBE4D070EF8AB1BCCAF2A9D5CCAE7282A2C66B3

Issued to: GlobalSign Root CA
Issued by: Microsoft Code Verification Root
Expires: Fri Apr 16 05:05:08 2021
SHA1 hash: CC1DEEBF6D55C2C9061BA16F10A0BFA6979A4A32
0770デフォルトの名無しさん
垢版 |
2015/06/15(月) 12:07:52.40ID:mCduSgmk
Issued to: GlobalSign
Issued by: GlobalSign Root CA
Expires: Mon Mar 18 19:00:00 2019
SHA1 hash: 4765557AF418C68A641199146A7E556AA8242996

Issued to: GlobalSign CodeSigning CA - SHA256 - G2
Issued by: GlobalSign
Expires: Fri Aug 02 19:00:00 2019
SHA1 hash: 4E34C4841080D07059EFC1F3C5DE4D79905A36FF

Issued to: CPI Technologies, Inc.
Issued by: GlobalSign CodeSigning CA - SHA256 - G2
Expires: Thu Oct 15 11:29:33 2015
SHA1 hash: 969369F2B3539100D14A15D076FB64A77728C82E

Done Adding Additional Store
Successfully signed and timestamped: hoge.cat
0773デフォルトの名無しさん
垢版 |
2015/12/01(火) 22:49:16.85ID:WgVnPdZx
WDFドライバのサンプルRamdiskで、どうセキュリティを設定してもintegritylevel lowでアクセスできないんだがさっぱり分らん。
0774デフォルトの名無しさん
垢版 |
2015/12/03(木) 21:06:47.39ID:W/VU2853
Windowsでintel dpdk使いたいんだけどドライバーって
どこからダウンロードできるのでしょうか?
0775デフォルトの名無しさん
垢版 |
2016/01/02(土) 13:34:40.24ID:obKZ3CNA
ドライバ初心者なんですが、UMDFからマウス操作ってできますか?
サンプルが見つからないのでもしかするとKMDFのみなのかなって思ったり
0777デフォルトの名無しさん
垢版 |
2016/01/27(水) 11:55:29.64ID:0FX+lNX3
windows8.1 x64で不思議なことが起こるんだが。

ドライバで仮想アドレスをMmGetPhysicalAddressで物理アドレスに変換したら
「PCの搭載メモリ以上の物理アドレスが吐き出される」

8GBしかメモリつんでないPCで0x200000000以上の物理アドレスが返ってくるのおかしくね?
でもそのアドレスを使っても動作異常が起きない不思議
0778デフォルトの名無しさん
垢版 |
2016/01/27(水) 13:13:27.51ID:+TBMh7+H
3〜4GBあたりのMMIOと被ってる物理メモリがリマッピングされるから
0x200000000以上でも別におかしくないよ
0780デフォルトの名無しさん
垢版 |
2016/01/29(金) 02:59:42.84ID:i0c4ZSE8
リマップされてるエリアってときたまデータ化けるんだよね。
MBによってはトリッキーなことしててアクセスタイミングシビアなのかなぁ。
0781デフォルトの名無しさん
垢版 |
2016/03/07(月) 02:07:20.88ID:A6YA8U2h
KMDFで作ったドライバから専用のDLLに通知を送るってどうやればいいんでしょう?
自前のID定義してウィンドウメッセージとか送ればいいのかな?
0782デフォルトの名無しさん
垢版 |
2016/03/11(金) 09:40:09.87ID:DCNMHBt2
ring3                   ring0

CreateEvent
イベントオブジェクト作成

DeviceIoControl
ドライバにイベントハンドルを
教えてあげる

                      ObReferenceObjectByHandle
                      教えてもらったハンドルで
                      イベントオブジェクト作成

WaitForSingleObject等
待機

                      KeSetEvent
                      通知

だとセキュリティの問題あるんだっけ?
0783デフォルトの名無しさん
垢版 |
2016/03/12(土) 01:28:54.42ID:589WABKd
>>782
ありがとう。
そもそも通知の方法がわからなかったからセキュリティの問題とかあるのかわからないや...

とりあえず非同期IOで作ってみたけど、いまいちうまく動かなかったらこの方法に作り替えてやってみます。
0784デフォルトの名無しさん
垢版 |
2016/03/12(土) 15:14:32.76ID:03/SVORd
常にOVERLAPPEDでCreateFileして
イベント発生のタイミングでI/Oが完了する
DeviceIoControlか空ReadFileで実装したのかな?
手間はこっちのほうが多いけど確実なんじゃないかな
0785デフォルトの名無しさん
垢版 |
2016/03/13(日) 19:54:34.01ID:+UtlCfQY
>>784
一応、非同期IOで動きました。
やり方はご指摘の通り、OVERLAPPEDでCreateFileしてDeviceIoControlで完了待ちしてます。

が、この方法だとイベント受ける毎にDeviceIoControlで待ち受けしなきゃいけないから>>782の方法にしようか検討中。

でも、それより変更したドライバ入れたらWindowsが起動しなくなったのでそれを先に解決しないと。。。
VisualStudioのカーネルデバッガからlm見ても自作のドライバはロードされてないし、
呼出し履歴にも自作ドライバのモジュールは表示されてないんだけど何が起こってるんだろう?

自作ドライバを入れ替えてから発生してるから自作ドライバに問題があると思うんだけど何から調べればいいんだろう?
0786デフォルトの名無しさん
垢版 |
2016/03/14(月) 23:39:04.61ID:Xpx0YwFR
月並みだけど
DriverEntry以降AddDevice等ドライバ側のハンドラを逐一追っていくしかないだろうね
起動しないとなると重篤だしどこかでKeBugCheckに引っかかってるとかかな?

個人的にはボロいターゲットマシンを用意してwindbgを使うのが好きだが
ターゲットとの接続がUSBもイーサネットも面倒なんでシリアルで
となると最近はシリアルついてるマシンが無いという
0787デフォルトの名無しさん
垢版 |
2016/03/14(月) 23:45:56.09ID:Xpx0YwFR
USBの3秒ルールとかタイミングにうるさいヤツだとブレイクで止められないんで
KdPrintだっけ?DebugPrintのカーネル版
そんなやつで片っ端からログ吐かせてダメなところを特定したことはあった
0788デフォルトの名無しさん
垢版 |
2016/03/15(火) 02:23:15.35ID:ERCDR/oc
>>787
主のドライバは、KMDFだから、それじゃなくて、Taraceが使える。
接続は、デスクトップを2台用意して1394で繋ぐのが一番確実。
0792781
垢版 |
2016/03/15(火) 17:02:21.34ID:nv+DKeW6
いろいろ確認方法のご教示ありがとうございます。
パフォーマンスツールキットとか入れてみたけど結局わからなくて、
今は変更前から徐々に実装する形で問題の箇所を洗い出してます。

ETWによるTraceはは色々出力してますが、
起動直後からログを取得する方法がわからなくて、
動作停止するまでのTraceは確認できてないです。

パフォーマンスツールキットで起動時のNT Kernel Loggerのログをとったら
200MB以上あって、シリアル転送で取得に5時間もかかったのでちょっと解析には
使えない感じです。

VMはターゲットPCが非力なため試してないです。

ちなみに開発環境はこんな感じ。
ホストPC:Windows7
ターゲットPC:Windows7(32bit)
接続方法:シリアル(115kbps)※1394ついてないため
コンパイラ:VisualStudioExpress2013 for Windows Desktop
WDK:WDK8.1

簡単な経緯としては
PCIExpressデバイス用の自作ドライバ(KMDF)にハード割り込み処理を追加したらWindowsが起動しなくなりました。
割り込み処理追加前の自作ドライバは問題なし。
処理なしのコールバックを登録してWdfInterruptCreateを呼ぶまでもOK。
以下、必要な処理を少しずつ実装して試行中。。。
0793デフォルトの名無しさん
垢版 |
2016/03/17(木) 12:50:20.47ID:TI5uoHzl
「特定のバージョンのJavaランタイムを必要としていたのだが、
3月14日よりJava実行環境が不要となったという。
Javaランタイムではかねてから脆弱性問題が指摘されていたためこれは素晴らしい……
と思いきや、その代わりにActiveXを利用(中略)
7年後(2023年1月10日)までなので、少なくともそこまでにはサイトを刷新しなければならない」

特定バージョンのJavaを要求していた地方税電子納税サイト、
Javaを廃止してActiveXに切り替え
http://security.srad.jp/story/16/03/15/0329226/
ストーリー by hylom 2016年03月15日 12時37分こんなことに 部門より
0794871
垢版 |
2016/03/21(月) 22:43:26.37ID:urLhFN/v
色々アドバイスありがとうございました。
起動しない原因もなんとか解決しました。

原因は割り込み処理内でMmMapIoSpace呼んだせいでした。
割り込み処理はDIRQLなんでMmMapIoSpaceは使えないんですね。
0798片山博文MZ ◆T6xkBnTXz7B0
垢版 |
2016/04/20(水) 19:54:05.93ID:HDtf39ye
今年の中旬か下旬に高額賞金をかけた「カタヤマゲーム」をこの板で開催するから、必ず参加してくれよ。
0801デフォルトの名無しさん
垢版 |
2016/06/17(金) 21:41:27.78ID:5fWY3W8K
カタヤマ大賞(カタヤマゲーム)は、会場が管理人に消されたため、中止になりました。
0802デフォルトの名無しさん
垢版 |
2016/11/01(火) 07:23:10.44ID:BruE0qoG
ドライバーの存在しないデバイスに無理矢理標準のゲームパットのドライバをインストールさせることは可能でしょうか
0803デフォルトの名無しさん
垢版 |
2016/12/30(金) 20:36:21.53ID:+CghVsdn
UMDFで仮想HIDタッチパネルを作ろうと思ってるんだけど、
デバイスマネージャでは認識してるけど、
Win10のコンパネのシステムのペンとタッチのところで認識してくれない。
たま〜に認識することがあるんだけど、そのときは
IOCTL_UMDF_HID_GET_FEATUREが飛んできてマルチタッチの数返すと、
IOCTL_UMDF_HID_SET_FEATUREで、INPUT MODEをマルチタッチにするように
リクエストが来るんだけど、ほとんどの場合でこれが来ない。
IOCTL_UMDF_HID_SET_FEATUREが飛んでくる条件はなんなんでしょう?
0804デフォルトの名無しさん
垢版 |
2018/05/23(水) 22:53:23.93ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

KOZ8I
0805デフォルトの名無しさん
垢版 |
2018/07/04(水) 23:15:02.49ID:gFgZc5FG
N5V
0806デフォルトの名無しさん
垢版 |
2018/07/05(木) 13:52:57.30ID:vxf3BwWL
VS2017上でデバドラのプロダクト署名の設定はどうやるのでしょう?

プロジェクトのプロパティでDriverSigningのSignModeをProduction Sign
ProductionCertificateを「d:\aaa.pfx」、cross certificateを「d:\bbb.crt」
これでこんなエラーになります
> error : Invalid certificate or password.
> error : Invalid argument <d:\aaa.pfx> for property <ProductionCertificate>.
ぐぐるとVSを管理者にしろというのが出たので試しましたが、それもエラーでした

同じパスワードとcertificateをつかってsigntoolでは署名できます。
signtool.exe sign /p xxxxx /v /ac b:\bbb.crt /f d:\aaa.pfx /tr http://timestamp.comodoca.com/rfc3161 ccc.sys
0808デフォルトの名無しさん
垢版 |
2020/03/23(月) 18:57:09.03ID:y6f8V/oj
(1) Windows Server 2003 SP1 DDK (1830_usa_ddk.iso/3790.1830) の CL.EXE でコンパイルすると、
>> LINK : warning LNK4078: multiple '.rdata' sections found with different attributes (C0000040)
というエラーが出ます。異なる属性の '.rdata' のセクションが2つ定義されているということなんですが、
どなたか、解決策はございますでしょうか。
0809デフォルトの名無しさん
垢版 |
2020/03/24(火) 11:23:51.37ID:JQ7YmFwi
link してる複数の obj の中で(株)ってるんじゃね
0811デフォルトの名無しさん
垢版 |
2020/09/14(月) 22:14:52.77ID:AbBGhjjt
個人でも署名できるぞ。公証人に書類作ってもらったり面倒だけど。5年10万ぐらい
更新時にまた最初から申請しなおさないといけなくてさらに面倒だから個人でとるなら最長期間でとらないと泣く
自分で使うだけなら金払わなくても自己署名でいける
0812デフォルトの名無しさん
垢版 |
2020/09/15(火) 17:32:15.53ID:GP6RXICZ
>>811
売り物なのに署名してないのはいやだなって思うけど、タダで作ってタダで提供
するのに10万も払って開発する人は少ないと思うけどなぁ

自己署名でいけるのって普通の環境じゃなくて開発者モードとかいうやつだけじゃ
ないの?Win7の開発者モードは勝手に画面に余計な表示出したりでこんなの
使わないよって感じだった覚えあるけどWin10はましになったのかな?
0814デフォルトの名無しさん
垢版 |
2020/09/15(火) 21:41:08.22ID:82EWDEue
>>812
win10は起動ごとにテストモード設定必要とかいろいろきつくなってる
管理者権限さえあればテストモードにしなくても自己署名でいけるのは7から変わらず
公式セキュリティホールだからMSも宣伝はしてないけどw
0815デフォルトの名無しさん
垢版 |
2020/09/20(日) 04:21:47.16ID:qfAYU2eA
>>810
MS署名が必須なのは、セキュアブートの環境だけだろう?
自己署名じゃダメだが、普通のコード署名なら、大した費用はかからないんじゃないか
最近は、出荷時からセキュアブートになってるPCもちらほらあるけどな
0816デフォルトの名無しさん
垢版 |
2020/09/20(日) 05:56:15.65ID:twnavDgu
>>813
個人が作ったドライバを使いたいか?
0817デフォルトの名無しさん
垢版 |
2020/09/20(日) 07:01:48.35ID:fEEtf3No
数年前まで個人でドライバ作って個人向けに売ってたけど年100-200万ぐらいにはなったぞ
0819デフォルトの名無しさん
垢版 |
2020/09/20(日) 13:40:18.70ID:BUCS6Ek+
>>817
無償じゃなくて、ビジネスとしてやるなら、
署名ぐらいは、立派なのをちゃんとつけたほうがいいわな
0821デフォルトの名無しさん
垢版 |
2020/11/02(月) 18:58:53.20ID:KqjMEGzA
MmMapLockedPagesSpecifyCacheって
WOW64の32ビットユーザアドレス空間にもマップできるんだな
すげー
0823デフォルトの名無しさん
垢版 |
2022/02/14(月) 13:45:54.66ID:WPt93Pz0
もしかして、従来のカーネルコード署名できなくなってる?
もうMS経由でしかダメ?
0827デフォルトの名無しさん
垢版 |
2022/03/30(水) 18:39:44.19ID:B+Ol9Bvt
17歳女子高生です
WDK for Windows 10 バージョン 2004 のオフラインインストールの方法、
または同.iso等イメージの直リンURLを教えてちょんまげ
0831デフォルトの名無しさん
垢版 |
2022/11/04(金) 11:20:39.57ID:hp15nXPU
自作のドライバがコア分離ではじかれたんだけど
どうすれば対応できるんです?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況