投稿者 snowmansnow  (社会人) 投稿日時 2021/7/3 22:10:28
こんばんは、るきお様、魔界の仮面弁士様
勘違いしてまして
PAPERSOURCEのROWKINDと
PAPERSIZEのROWKINDは、対応しておらず、
トレイのサイズはCUSTOM設定のWIDTHやHEIGHTから分からないと思われました。

仕方が無いのでプリンタ設定のダイアログの用紙トレイから取得しようと思いました。
でも、COMBOBOXのhWndと個数までは取得できたのですが、
用紙テキストを取得しようとすると、エクセルが落ちます。

Private Function MyGetComboBoxItem(hWnd As LongAs String

' コンボボックス文字列取得 
'http://mt-soft.sakura.ne.jp/web_dl/vb-parts/get_combobox/ 
Dim strItemData             As String * 4096    '取得文字列格納用バッファ 
    Dim lngRc As Long
    Dim Cnt As Long
    Dim i As Long
    Dim Dt As String
     Dim p As Long
     Cnt = SendMessage(hWnd, CB_GETCOUNT, 0, CLng(0))    '個数取得 
    Dt = ""
    For i = 0 To Cnt - 1
        
       MsgBox "ここ1"
        lngRc = SendMessage(hWnd, CB_GETLBTEXT, i, strItemData) '文字列取得 
        MsgBox "ここ2"
        
        p = InStr(strItemData, vbNullChar) - 1          '文字列長 
        If p >= 0 Then Dt = Dt & Left(strItemData, p)
        Dt = Dt & vbCrLf
        
    Next i
    MyGetComboBoxItem = Dt
     
End Function
 


以前に魔界の仮面弁士様が別のサイトで、
http://hanatyan.sakura.ne.jp/vb60bbs/wforum.cgi?mode=allread&no=15777
メモリの確保が大事とおっしゃってましたが、まだよく分かりません。

COLLECTIONの例で
http://nonsoft.la.coocan.jp/Win32Api/Win32ApiEnumWin.htmlや
るきお様のページも見たのですが、フォームでない別アプリが良くわかりませんでした。

何か対策やヒントございましたらお願いしたいです。
宜しくお願いします。