討論區快速選單
知識庫快速選單
傑米的攝影旅遊筆記 網路投保旅行平安險
[ 回上頁 ] [ 討論區發言規則 ]
wpt810問題續集
更改我的閱讀文章字型大小
作者 : sha(sha) 貼文超過200則人氣指數超過10000點
[ 貼文 272 | 人氣 21340 | 評價 120 | 評價/貼文 0.44 | 送出評價 36 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/15 下午 10:45:50
很奇怪,今天發現不能<回應本文>,只好再<發起新主題>
作者 : sha(sha) 貼文超過200則人氣指數超過10000點
[ 貼文 272 | 人氣 21340 | 評價 120 | 評價/貼文 0.44 | 送出評價 36 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/15 下午 11:00:53
先謝謝ozzy兄的再提醒,我會好好再研究那個指令到底要如何使用
再謝謝燃燒的大地兄的建議,但我那些點陣圖的資料,雖然是亂打,卻沒有你所說的0x00的資料.
前面那8個參數是依據指令的要求來輸入的,例如 m=0
xL=48(x30) , xH=0 : 表示水平有xL+xH*256=48組點陣圖的位元組數
yL=1,yH=0 : 表示垂直有yL+yH*256=1點(1排),所以後面就只輸入一排48組的資料,但是沒印出任何東西

我也有試過將yL改為2,而後面輸入2*48=96組點陣圖的資料,結果還是什麼東西都沒印出來.
所以懇請燃燒的大地兄或其他高手明白告訴我到底是那48組的資料有什麼錯誤,抑或是其他地方我認知上有問題,請各位前輩,給我好好指點指點,拜託!謝謝!
作者 : ice_emissary(燃燒的大地) 貼文超過200則
[ 貼文 408 | 人氣 0 | 評價 1890 | 評價/貼文 4.63 | 送出評價 18 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/16 上午 12:41:41
>再謝謝燃燒的大地兄的建議,但我那些點陣圖的資料,雖然是亂打,卻沒有你所說的0x00的資料.

所以那一大堆的 \x0 都不是零就對了?
作者 : ice_emissary(燃燒的大地) 貼文超過200則
[ 貼文 408 | 人氣 0 | 評價 1890 | 評價/貼文 4.63 | 送出評價 18 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/16 上午 01:00:33
你要不要把 strlen 的結果值印出來,看看你到底實際送了幾個位元組的資料出去?看看是不是你所預期的?

如果你不明白 \x0 和 0x00 是一樣的東西,或不明白零再字串內的作用的話,請從 C 語言基礎看起!
作者 : ma_hty(白老鼠(Gary))討論區板主 OpenGL卓越專家DirectX優秀好手C++頂尖高手貼文超過2000則人氣指數超過70000點
[ 貼文 2189 | 人氣 89850 | 評價 10120 | 評價/貼文 4.62 | 送出評價 79 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/16 上午 10:18:12
Mmm... 不知何以, 胡裡胡塗地就試著改正你列印點陣圖的原碼. 隨意隨意, 試試看呀.


void writebyte( HANDLE handle, BYTE b )
{
  DWORD dwWrite;
  WriteFile(handle,&b,1,&dwWrite,0);
}

///////////////////////////////////////////////////////
// 下面代替你列印點陣圖的原碼
//
  BYTE dat[] = {
    0b00010000, 0b00000000, 0b00000000, 0b00000000,
    0b00111000, 0b01111100, 0b10010010, 0b00000000,
    0b01111110, 0b00010000, 0b01010100, 0b00000000,
    0b00111000, 0b00011000, 0b00111000, 0b00010000,
    0b00111000, 0b00010100, 0b00010000, 0b00000000,
    0b00111000, 0b00010000, 0b00010000, 0b00000000,
    0b00000000, 0b00010000, 0b00000000, 0b00000000,
  }; // 32 dots x 7 dots image
  int w = 4; // w = 32/8 = 4
  int h = 7;

  DWORD dwWrite;
  writebyte(handle,0x1d);
  writebyte(handle,0x76);
  writebyte(handle,0x30);
  writebyte(handle,0x00);
  writebyte(handle,w%256);
  writebyte(handle,w/256);
  writebyte(handle,h%256);
  writebyte(handle,h/256);
  WriteFile(handle,dat,w*h,&dwWrite,0);

作者 : sha(sha) 貼文超過200則人氣指數超過10000點
[ 貼文 272 | 人氣 21340 | 評價 120 | 評價/貼文 0.44 | 送出評價 36 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/17 上午 10:41:07
還是不了解燃燒的大地兄的說明,因就我而言,資料中的 \x0 , 是依該指令的要求來寫,而後面那48組點陣圖的資料,看不出那個資料是 \x0 或 0x00.懇請燃燒的大地兄明白告訴我是那48組的資料有問題,抑或是前面那8組參數那裡寫錯,拜託!拜託!
在此再謝謝白老鼠兄的提供,我會嚐試執行你所提供的程式,看有什麼結果.謝謝!
作者 : ice_emissary(燃燒的大地) 貼文超過200則
[ 貼文 408 | 人氣 0 | 評價 1890 | 評價/貼文 4.63 | 送出評價 18 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2018/12/17 上午 11:59:41
這是從你上次貼出來的程式碼裡面,節錄列印點陣圖的部份:

strcpy(Buffer,"\x1d\x76\x30\x0\x30\x0\x1\x0\x31\x32\x33\x34\x35\x36\x37\x38\x39\x3a\x3b\x3c\x3d\x3e\x3f\x40\x41\x42\x43\x44\x45\x46\x47\x48\x49\x4a\x4b\x4c\x4d\x4e\x4f\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f\x60");
WriteFile(handle,&Buffer,lstrlen(Buffer),&dwWrite,0);

請在那兩行中間插入一些程式碼,變成像下面這樣:

strcpy(Buffer, ......
printf("Data size: %d\n", lstrlen(Buffer));
WriteFile(handle, ......

然後再告訴我你觀察到什麼現象?
 板主 : 青衫 , Raymond
 > Visual C++ - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - Visual C++ - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
Visual C++
1 青衫 11070 
2 Raymond 10090 
3 Clier 7630 
4 小約翰 2500 
5 Cog 2030 
6 coco 1870 
7 aming 1410 
8 牧童哥 1400 
9 r2109 1380 
10 Akira 1350 
Visual C++
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2019 程式設計俱樂部 http://www.programmer-club.com.tw/
0.15625