June 21, 2016
On Sunday, 19 June 2016 at 07:44:30 UTC, Rainer Schuetze wrote:
>
>
> On 18.06.2016 17:53, Joerg Joergonson wrote:
>> On Friday, 17 June 2016 at 08:02:24 UTC, Rainer Schuetze wrote:
>>>
>>>
>>> On 16.06.2016 08:25, Rainer Schuetze wrote:
>>>> I've not yet adjusted the conversion to the Windows 10 SDK. I'll try to
>>>> fix this, but maybe you can get hold of an Win 8.1 SDK in the mean time.
>>>
>>> I've pushed a few changes that allow converting the Windows 10 SDK.
>>> Please try again.
>>
>>
>> I still get "couldn't not detect sdk" and have to manually fix up. IIRC,
>> it requires accessing the registry to find the proper info(I think I saw
>> someone with a similar SDK problem in some software that said that).
>>
>
> Visual D is supposed to do that and set the WindowsSDKDir environment variable accordingly. Unfortunately, I left my test code in the batch file.
>
> I've pushed a version without the test override.

I still get the error

Building ..\bin\Debug\build.sdk...
"..\bin\Debug\tlb2idl.exe" "C:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\dte80.olb" "..\sdk\vsi\idl\dte80.idl" "C:\Program Files (x86)\Windows\Kits\10\\bin\x86\iviewers.dll"
could not detect the Visual Studio SDK
Building ..\bin\Debug\sdk.success failed!


June 23, 2016

On 22.06.2016 00:28, Joerg Joergonson wrote:
> On Sunday, 19 June 2016 at 07:44:30 UTC, Rainer Schuetze wrote:
>>
>>
>> On 18.06.2016 17:53, Joerg Joergonson wrote:
>>> On Friday, 17 June 2016 at 08:02:24 UTC, Rainer Schuetze wrote:
>>>>
>>>>
>>>> On 16.06.2016 08:25, Rainer Schuetze wrote:
>>>>> I've not yet adjusted the conversion to the Windows 10 SDK. I'll
>>>>> try to
>>>>> fix this, but maybe you can get hold of an Win 8.1 SDK in the mean
>>>>> time.
>>>>
>>>> I've pushed a few changes that allow converting the Windows 10 SDK.
>>>> Please try again.
>>>
>>>
>>> I still get "couldn't not detect sdk" and have to manually fix up. IIRC,
>>> it requires accessing the registry to find the proper info(I think I saw
>>> someone with a similar SDK problem in some software that said that).
>>>
>>
>> Visual D is supposed to do that and set the WindowsSDKDir environment
>> variable accordingly. Unfortunately, I left my test code in the batch
>> file.
>>
>> I've pushed a version without the test override.
>
> I still get the error
>
> Building ..\bin\Debug\build.sdk...
> "..\bin\Debug\tlb2idl.exe" "C:\Program Files (x86)\Common
> Files\Microsoft Shared\MSEnv\dte80.olb" "..\sdk\vsi\idl\dte80.idl"
> "C:\Program Files (x86)\Windows\Kits\10\\bin\x86\iviewers.dll"
> could not detect the Visual Studio SDK
> Building ..\bin\Debug\sdk.success failed!
>
>

We've made some progress here, it's now looking for the Visual Studio SDK folder, not the Windows SDK.

The VS2015 installer added the VSSDK140Install variable to the environment for me, but it seems to be missing for you.

Please try adding this line to
https://github.com/dlang/visuald/blob/master/build/sdk.bat#L29:

if "%VSISDKINC%" == "" if exist "%VSINSTALLDIR%\VSSDK" set VSISDKINC=%VSINSTALLDIR%\VSSDK

(no line break, might be inserted by mail program).
June 24, 2016
On Thursday, 23 June 2016 at 06:43:25 UTC, Rainer Schuetze wrote:
>
>
> On 22.06.2016 00:28, Joerg Joergonson wrote:
>> On Sunday, 19 June 2016 at 07:44:30 UTC, Rainer Schuetze wrote:
>>>
>>>
>>> On 18.06.2016 17:53, Joerg Joergonson wrote:
>>>> On Friday, 17 June 2016 at 08:02:24 UTC, Rainer Schuetze wrote:
>>>>>
>>>>>
>>>>> On 16.06.2016 08:25, Rainer Schuetze wrote:
>>>>>> I've not yet adjusted the conversion to the Windows 10 SDK. I'll
>>>>>> try to
>>>>>> fix this, but maybe you can get hold of an Win 8.1 SDK in the mean
>>>>>> time.
>>>>>
>>>>> I've pushed a few changes that allow converting the Windows 10 SDK.
>>>>> Please try again.
>>>>
>>>>
>>>> I still get "couldn't not detect sdk" and have to manually fix up. IIRC,
>>>> it requires accessing the registry to find the proper info(I think I saw
>>>> someone with a similar SDK problem in some software that said that).
>>>>
>>>
>>> Visual D is supposed to do that and set the WindowsSDKDir environment
>>> variable accordingly. Unfortunately, I left my test code in the batch
>>> file.
>>>
>>> I've pushed a version without the test override.
>>
>> I still get the error
>>
>> Building ..\bin\Debug\build.sdk...
>> "..\bin\Debug\tlb2idl.exe" "C:\Program Files (x86)\Common
>> Files\Microsoft Shared\MSEnv\dte80.olb" "..\sdk\vsi\idl\dte80.idl"
>> "C:\Program Files (x86)\Windows\Kits\10\\bin\x86\iviewers.dll"
>> could not detect the Visual Studio SDK
>> Building ..\bin\Debug\sdk.success failed!
>>
>>
>
> We've made some progress here, it's now looking for the Visual Studio SDK folder, not the Windows SDK.
>
> The VS2015 installer added the VSSDK140Install variable to the environment for me, but it seems to be missing for you.
>
> Please try adding this line to
> https://github.com/dlang/visuald/blob/master/build/sdk.bat#L29:
>
> if "%VSISDKINC%" == "" if exist "%VSINSTALLDIR%\VSSDK" set VSISDKINC=%VSINSTALLDIR%\VSSDK
>
> (no line break, might be inserted by mail program).


Ok, that helped. It seems to convert the SDK's to D, but eventually errors with

std.file.FileException@std\file.d(578): ..\sdk\win32\10.0.10240.0\activdbg.d: The system cannot find the path specified.

I do have the activedbg.d file in sdk\port(not win32) and there are a bunch of d files in sdk\win32 too along with dte idl files in sdk\vsi\idl.

It seems that whatever is building the paths to the d files is using the sdk version info.


Output:

Building ..\bin\Debug\build.sdk...
Translating Windows SDK and Visual Studio SDK to D, this can take several minutes. Please be patient.
"..\bin\Debug\vsi2d.exe" --vsi="C:/Program Files (x86)/VS2015//VSSDK" --win="C:/Program Files (x86)/Windows/Kits/10//include" --dte="..\sdk\vsi\idl" --sdk=..\sdk


std.file.FileException@std\file.d(578): ..\sdk\win32\10.0.10240.0\activdbg.d: The system cannot find the path specified.
----------------

0x00435FD1 in @trusted bool std.file.cenforce!(bool).cenforce(bool, const(char)[], const(wchar)*, immutable(char)[], uint)
0x0041A62C in @safe void std.file.write!(immutable(char)[]).write(immutable(char)[], const(void[])) at \dmd2\windows\bin\..\..\src\phobos\std\file.d(450)
0x0040FA61 in int c2d.idl2d.idl2d.main(immutable(char)[][]) at \visuald-master\c2d\idl2d.d(2558)
0x0041ED5C in _Dmain at \visuald-master\c2d\idl2d_main.d(18)
0x004310EB in D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZ9__lambda1MFZv
0x004310AF in void rt.dmain2._d_run_main(int, char**, extern (C) int function(char[][])*).runAll()
0x00430FB0 in _d_run_main
0x0041ED78 in main at \visuald-master\c2d\idl2d.d(7)
0x004635E9 in mainCRTStartup
0x76FF3744 in BaseThreadInitThunk
0x77129E54 in RtlSetCurrentTransaction
0x77129E1F in RtlSetCurrentTransaction
Searching files...
Scanning files...
Converting files...
A bunch of h files then the ends with
Windows/Kits/10//include\10.0.10240.0\um\activdbg.idl


Thanks again!
June 24, 2016

On 24.06.2016 19:08, Joerg Joergonson wrote:
> Ok, that helped. It seems to convert the SDK's to D, but eventually
> errors with
>
> std.file.FileException@std\file.d(578):
> ..\sdk\win32\10.0.10240.0\activdbg.d: The system cannot find the path
> specified.

The SDK version string should not be part of the D file names.

>
> I do have the activedbg.d file in sdk\port(not win32) and there are a
> bunch of d files in sdk\win32 too along with dte idl files in sdk\vsi\idl.

sdk\port\activedbg.d is an old dummy file, the header activedbg.h is now completely converted to sdk\win32\activedbg.d

>
> It seems that whatever is building the paths to the d files is using the
> sdk version info.
>
>
> Output:
>
> Building ..\bin\Debug\build.sdk...
> Translating Windows SDK and Visual Studio SDK to D, this can take
> several minutes. Please be patient.
> "..\bin\Debug\vsi2d.exe" --vsi="C:/Program Files (x86)/VS2015//VSSDK"
> --win="C:/Program Files (x86)/Windows/Kits/10//include"
> --dte="..\sdk\vsi\idl" --sdk=..\sdk

The --win path seems wrong. According to the messages above it should probably be

--win="C:/Program Files (x86)/Windows/Kits/10/10.0.10240.0/include"

The batch checks whether windows.h or um/windows.h exists in this directory. That should fail for "C:/Program Files (x86)/Windows/Kits/10//include". Maybe there are some files left from your attempts to convince earlier versions of the batch to succeed?

It also seems that "%WindowsSDKVersion%" and %UCRTVersion% don't yield anything. You might want to echo these values somewhere in the batch to confirm.

A simple fix for your system should be to replace

set WINSDKINC=

with

set WINSDKINC=C:\Program Files (x86)\Windows\Kits\10\10.0.10240.0\include

1 2
Next ›   Last »