X



WindowsDDK各種についてのスレ
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
NGNG
Microsoft Windows Driver Development Kits
http://www.microsoft.com/ddk/

注意:
いつの間にやらDLできなくなってる。
CDを注文する以外に方法はない。しかも送料が$25。

古いバージョンについて
Microsoft Windows DDK Version Retirements
The Microsoft® Windows® 2000 DDK, the Microsoft Windows 98 DDK, and the Microsoft Windows NT® 4.0 DDK are no longer be available for purchase or download on this site.
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 して、片っ端から追加してるんですが、
こんな方法しかないんでしょうか…。
■ このスレッドは過去ログ倉庫に格納されています

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